.NET umsteigen ja oder nein?



  • Artchi schrieb:

    Da aber der Compiler prinzipiel von VisualC++ 6.0 ist, nur mit der zusätzlichen (!) Eigenschaft, auch .NET zu können, ist 2002 einfach nicht zu empfehlen.

    Er kann auch C++ ein bisschen besser, kann besser optimieren, und hat einige andere kleine Features.

    Zur Frage:
    der Umstieg WinAPI zu .NET ist logisch und sollte gemacht werden.
    Allerdings ist eben die Frage ob man sich an Windows binden will (wenn man vorher winapi gemacht hat, ist das sehr wahrscheinlich - denn immerhin ist .NET portabler als die Winapi).
    uU will man aber den Umstieg so machen, dass man Linux und Mac auch gleich unterstützt, dann wäre wxWidgets oder auch Qt zu erwägen (sofern man C++ programmieren will).

    Alternativ gibt es noch Java, was .NET ja nicht so unähnlich ist.

    Aber dazu gab es schon genug Threads...

    @asdrubael:
    Visual Studio ist eine IDE, mehr nicht.
    Sie hat Compiler, zB cl für C++, csc für C#,...
    Diese Compiler kann man unabhängig von der IDE verwenden (zB csc im SharpDevelop)
    managed C++ oder wie es jetzt heißt C++/CLI ist eine neue Sprache, folglich wird man mit alten Compilern da nicht weit kommen. Fazit: VC++6 ist nicht .NET fähig.

    Allerdings braucht man auch kein VS um .NET programme zu erstellen...



  • C++/CLI könnte was für dich sein. Dazu brauchst du afaik mindestens das .NET Framework 2.0.

    Nein, um C++ im .NET-Framwork zu programmieren, reicht VisualC++2002.

    Nein! Zum Brotbacken brauchst du einen Backofen.

    Was ist das denn für eine Art? Einfach erstmal "Nein" rufen und dann irgendwas total zusammenhangsloses schreiben.

    Natürlich ist beides richtig. Für C++/CLI braucht man das .NET Framework 2.0, um das .NET Framework zu verwenden reicht aber VC++2002 (managed C++).



  • ok danke, ihr habt mir echt weitergeholfen 🙂 ich werde mir vs .net kaufen und mit dem .NET 2.0 framework arbeiten



  • Dann muss ich dich enttäuschen. Das gibt's noch nicht zum Kaufen. Du kannst dir aber bei der MSDN ne beta kostenlos ziehen...



  • Worin besteht eigentlich konkret der Unterschied zwischen "managed C++" und normalem C++ (also nach dem ISO Standard von 1998)? Ist "managed C++" normales C++ mit ein paar Erweiterungen?

    PS: Ich weis ich könnte mir einfach beide anschauen, aber vielleicht ist ja einer so nett mir die groben Unterschiede zu sagen.



  • Hallo,

    managed C++ bietet z. B. aus anderen Sprachen bekannte Features, wie z. B. Garbage Collection. Außerdem bist du eben in der Lage, sämtliche .Net Features zu nutzen und kannst recht simpel Fenster und son Zeuchs erstellen. Ferner ist es ohne weiteres Möglich, Bibliotheken und Funktionen die in C# oder VB.Net erstellt wurden, in Managed C++ einzubinden.

    Genauere Infos gibts hier:
    http://www.calsky.com/lexikon/de/txt/c/c_/c_plusplus_cli.php



  • Danke CarstenJ. Ich hab auch ein wenig auf google gesucht und hab http://msdn.microsoft.com/visualc/default.aspx?pull=/library/en-us/dnvs05/html/TransGuide.asp gefunden.

    Kommt es mir nur so vor oder hat MS in der v1 versucht hat ISO C++ schlecht dar zu stellen indem MS möglichst viele neue Keywords mit __ hinzuzufügt hat (und diese mit ISO C++ begründet). In v2 ein paar Schwächen von ISO C++ ausgebessert hat aber vor allem viele neue Sprachkonstrukte für bereits Existirendes (oder mit Template und co machbares) hinzugefügt hat?



  • Irgendwer schrieb:

    Worin besteht eigentlich konkret der Unterschied zwischen "managed C++" und normalem C++ (also nach dem ISO Standard von 1998)? Ist "managed C++" normales C++ mit ein paar Erweiterungen?

    Managed C++ ist doch AFAIK ein verkrüppeltes C++ um es in die .NET Runtime einbinden zu können. Die .NET VM wurde eben nicht auf C++ ausgelegt, sondern auf C#, da C++ aber mehr Sprachfeatures bietet und dotNET andere Programmierweisen mit sich bringt, wurde da eben rumgewurschtelt.

    Managed C++ hat AFAIK keine Templates, aber dafür Garbage Collection.



  • Managed C++ ist doch AFAIK ein verkrüppeltes C++ um es in die .NET Runtime einbinden zu können. Die .NET VM wurde eben nicht auf C++ ausgelegt, sondern auf C#, da C++ aber mehr Sprachfeatures bietet und dotNET andere Programmierweisen mit sich bringt, wurde da eben rumgewurschtelt.

    Managed C++ hat AFAIK keine Templates, aber dafür Garbage Collection.

    Das wäre mir neu. Also AFAIK ist Managed C++ C++, mit ein paar zusätzen. Da schreibt man dann ein hässliches __... vor class und hat dann eine Klasse, die von .NET verwendet werden kann. Solche Klassen können keine Templates sein, aber die normalen Klassen bleiben normale C++-Klassen mit Templates und allem drum und dran.



  • @kingruedi: Der "Gag" an managed C++ ist, dass du managed Code und unmanaged Code mischen kannst. Der managed Code ist natürlich mit gewissen (notwendigen) Einschränkungen verbunden.
    Wer's mag...


Anmelden zum Antworten