C und C++ gleichzeitig



  • Auf den ersten Blick wirkt es ähnlich, weil C eine Untermenge von C++ ist.
    Die Konzepte und Sprachmittel sind jedoch signifikant verschieden.
    Wenn man diese Konzepte sauber trennt, besteht kein Problem, selbst wenn man typische C-Sprachmittel ab und zu in C++-Programmen einsetzt.

    http://www.c-plusplus.net/c___1.htm
    Dort finden sich Tutorials, die den Umstieg von C nach C++ erläutern. Da sieht man die Unterschiede recht gut.



  • Um ehrlich zu seien, ich habe noch nie C++ Code gesehen, der auch nur im entferntesten Codezeilen enthält, der die Hardware anspricht, alles was ich im Zusammenhang mit Hardwareprogrammierung kenne, ist in ANSI C.

    Natürlich würde ich mich freuen wenn mir mal jemand eine Website vorführt, in der es um Systemprogrammierung/Hardwareprogrammierung in C++ geht!

    Und was noch viel besser mal wäre, ein OS was in C++ ist! Häufig wurde schon
    diese Frage hier gestellt, niemand war aber fähig die Antwort zu liefern,
    man wurde meistens nur mit sinnlosen Links oder irgendwelchen anderen
    Märchen überhäuft.



  • Auch wenn ich für Hardwarenahe Programmierung C einsetze und in anderen Bereichen mit C++
    arbeite - ist bei mir durch meine Arbeitsumfeld und meine Geschichte bedingt - würde ich abraten
    beide Sachen gleichzeitig zu lernen. Allerdings sich mit beiden Sprachen und Konzepten auseinander zusetzen nachdem man eine davon kann halt ich für unabdingbar.
    (siehe auch unsere Diskussion http://www.c-plusplus.net/forum/viewtopic.php?t=43273)

    Auch wenn Shade Of Mine nir inzwischen bewiesen hat das die neuesten Standards dieser beiden
    Sprachen divergieren, sind sie doch nicht so unterschiedlich.

    Somit kann man in C++ jederzeit C-Codierte Funktionen aufrufen, das heißt du hast trotz C++ Programmierung von deiner Seite vollen Zugriff auf alle Routinen des OS auch wenn sie in C
    geschreiben sind

    C++ bietet viele moderne Konzepote die sehr interessant sind, und auf die man nicht verzichten sollte.

    Meine Empfehlung lerne C++.



  • Du scheinst eine abwehrende Haltung gegenüber C++ einzunehmen. Vielleicht ist es besser, wenn Du C/Assembler für die Systemprogrammierung und Java oder C# für sonstige Anwendungen verwendest.

    OS in C++:
    http://www.pro-pos.org/index.php?pagename=KernelSpaceC%2B%2B&action=Info (Kernel in C++)
    http://www.invalidsoftware.net/os/ (Kernel in C++)
    http://www.themoebius.org.uk/tutes/ckernel.html (Kernel in C oder C++?)
    http://www.netfilter.org/unreliable-guides/kernel-hacking/conventions-cplusplus.html



  • @ PAD:

    C++ bietet viele moderne Konzepote die sehr interessant sind, und auf die man.

    Fehlt da was? 😃



  • 😃 Ich seh nixx, steht doch alles da 😃



  • Hauptmann schrieb:

    wenn du also ein Anfänger Tutorial für C++ liest wirst du das meiste auch für C++ verwenden können

    ein wahres wort 😃



  • japro schrieb:

    Hauptmann schrieb:

    wenn du also ein Anfänger Tutorial für C++ liest wirst du das meiste auch für C++ verwenden können

    ein wahres wort 😃

    😃
    sollte eigentlich#

    wenn du also ein Anfänger Tutorial für C++ liest wirst du das meiste auch für C verwenden können, und umgekehrt
    😃



  • Hauptmann schrieb:

    wenn du also ein Anfänger Tutorial für C++ liest wirst du das meiste auch für C verwenden können, und umgekehrt
    😃

    das ist falsch



  • oh ja vor allem das umgekehrt

    hab jetzt hier schon öfters gelesen, und inzwischen auch verstanden und eingesehen, daß c keine echte teilmenge von c++ ist.



  • Es geht nicht darum, ob C vollständig in C++ enthalten ist, sondern um den konzeptionellen Unterschied. Nehmen wir zur Verdeutlichung einen Satz, der aus einem C++-Tutorial stammen könnte:
    "Mittels Copy-Konstruktor kann ein Objekt mit einem anderen Objekt desselben Typs initialisiert werden. Der Standard-Copy-Konstruktor erzeugt nur eine flache Kopie." oder "Einparametrige Konstruktoren werden vom Compiler zur impliziten Typumwandlung verwendet, soweit sie nicht als explizit deklariert wurden."

    Die Konzepte (OOP, Template, STL, ...) zusammen mit dem deutlich erweiterten Sprachumfang machen C++ aus. Genau genommen ist C++ ein Monster. Flink, vielgestaltig und grausam. 😉
    Wer das nicht braucht, verwendet C oder eine andere Sprache.


Anmelden zum Antworten