Udo Schmitt schrieb:
> Aber was soll das?
Es erleichtert(e) die Übernahme von C Code nach C++ auf Source Code
Ebene. Man konnte so den Spaghat schaffen um Code erst mal
weiterverwenden zu können, ohne erst mal durch lange Editiersessions
durch zu müssen.
struct werden in C++ als Klassen angesehen, nur eben aus historischen
Gründen mit dem alten Schlüsselwort 'struct' und den notwendigen
Zugeständnissen, damit ein C 'struct' sich in C++ erst mal syntaktisch
und semantisch genau gleich verhält, wie es in C der Fall war. Und dann
kommt noch der C++ Klassenüberbau dazu.
> Das öffnet dem Mischen von C und c++ Syntax das Tor
> noch mehr.
Das ist sowieso ein Fehler. C und C++ sind 2 verschiedene Sprachen. Das
sich das eine aus dem anderen entwickelt hat, sollte man heutzutage als
historische Tatsache ansehen, mehr aber auch nicht. C Code kann, mit
Einschränkungen, nach C++ noch einigermassen einfach übernommen werden.
Dabei sollte man es aber bewenden lassen. Die Schere zwischen 'echtem C'
und dem was manchmal als das C-Subset von C++ angesehen wird, wird sich
auch in Zukunft immer weiter aufmachen.