C++ oder C++/CLI mit .net



  • Hi

    Ich habe im Zeitraum 2004/2005 in der Schule C++ gelernt mit dem Borland Compiler.
    Seit diesem Zeitraum habe ich nichts mehr an meinen C++ Programmierfähigkeiten getan und möchte gerne wieder damit anfangen.

    Ich habe aber inzwischen gesehen das es auch die C++/CLI mit .net Programmierung existiert und möchte gerne deshalb von euch einen Rat ob ich lieber mit C++/CLI von vorne anfragen soll oder lieber mit der normalen C++ Programmierung weiter arbeiten soll ?



  • Mach' C++ weiter. Wenn du auf .NET arbeiten willst, rate ich dir zu C#. C++/CLI macht AFAIK nur Sinn, wenn du schon vorhanden C++ Code portieren oder erweitern willst.



  • Was heißt von vorn anfangen?
    C++/CLI ist keine vollkommen andere Programmiersprache, es wurden ein paar Sprachmittel ergänzt und .Net ist ein Framework von vielen, dass einem erspart Sachen nachzuprogrammieren.
    Ich würde sagen, wenn du Windows-Programme schreiben möchtest, wirst du dir viel Arbeit sparen wenn du C++/CLI + .Net verwendest.
    🤡
    Wenn es darum geht Anwendungen zu programmieren, die möglichst wenig Bibliotheken/Frameworks nutzen, Hardware nahe sind, mit möglichst vielen Compilern übersetzbar sind, ... wird man wohl eher reines C++ einsetzen.



  • Keine Ahnung Haber! schrieb:

    Mach' C++ weiter. Wenn du auf .NET arbeiten willst, rate ich dir zu C#. C++/CLI macht AFAIK nur Sinn, wenn du schon vorhanden C++ Code portieren oder erweitern willst.

    Ohne auf deinen Nick einzugehen, C++/CLI ist afaik die schnellste Version eines .NET-Programms. Also C# ist einfacher, aber wenn ich mit .NET aufs Ganze will ist C++/CLI imho geeigneter.

    MfG SideWinder



  • SideWinder schrieb:

    C++/CLI ist afaik die schnellste Version eines .NET-Programms.

    Die Aussage verstehe ich nicht. Kannst du das nochmal erleutern?



  • Soweit ich weiß benutzt c# einen Interpreter und ist somit langsammeer als c++



  • Helium schrieb:

    SideWinder schrieb:

    C++/CLI ist afaik die schnellste Version eines .NET-Programms.

    Die Aussage verstehe ich nicht. Kannst du das nochmal erleutern?

    "Zur Zeit (2005) sind .NET-Programme, die mit C++/CLI erstellt werden etwa 20 bis 25 Prozent schneller als andere." (lt. Wikipedia)

    Andere Quellen bestätigen zwar nicht den Prozentsatz aber zumindest die Tatsache.

    MfG SideWinder



  • MisterX schrieb:

    Soweit ich weiß benutzt c# einen Interpreter und ist somit langsammeer als c++

    Also weißt du nichts.



  • Laut MSDN baut der C++/CLI-Compiler auf den C++-Compiler auf, d.h. er benutzt autom. die bisherigen C++-Optimierungen. Folge ist, das der mit C++/CLI erzeugte Code schneller ist, als der z.B. mit dem C#-Compiler. Da letzterer nunmal naturbedingt jünger ist und noch nicht soviel Optimierungen hat. Ist also eine rein historische Geschichte und hat nichts direkt mit der Sprache zu tun.



  • Artchi schrieb:

    Laut MSDN baut der C++/CLI-Compiler auf den C++-Compiler auf, d.h. er benutzt autom. die bisherigen C++-Optimierungen. Folge ist, das der mit C++/CLI erzeugte Code schneller ist, als der z.B. mit dem C#-Compiler. Da letzterer nunmal naturbedingt jünger ist und noch nicht soviel Optimierungen hat. Ist also eine rein historische Geschichte und hat nichts direkt mit der Sprache zu tun.

    Ich habe aber mit C++ wesentlich mehr Kontrolle (alias ich kann entweder GC oder eigene Speicherverwaltung, entweder .NET-Framework oder Native-Code verwenden). Bei gutem Einsatz sollte das imho eine schnellere Ausführung möglich machen.

    MfG SideWinder



  • @SideWinder: keine Angst, dass ist wirklich nur ein Nickname und speigelt auch nicht wieder was ich so im Internet mache 😉

    Erstmal Danke für die vielen Antworten.

    Wie ich jetzt herraus gelesen habe, ist C++/CLI, einfach nur C++ mit Ergänzung. Also werde ich mich weiter mit C++ befassen, habe mir jetzt auch hoffentlich ein gutes C++ gekauft "C++ Primer".



  • Ich meinte den von mir zitierten "Keine-Ahnung-Haber" 😉

    MfG SideWinder


Log in to reply