Jain.
Die meisten Sprachen kupfern von C und C++ ab, weil die Syntax sehr einfach und logisch aufgebaut ist. Wie jedoch abgekupfert wird ist von Sprache zu Sprache unterschiedlich - auch deren Verhaltensweisen.
Beispiel Generics von Java und C#
|
C-/C++-Quelltext
|
1
2
|
public static void foobar (List<String> stringList);
public static void foobar (List<Integer> intList);
|
C# compiliert das problemlos, da es ja 2 verschiedene Datentypen sind, in Java ist dies nicht möglich, da die Typangaben in Casts umgewandelt werden, daher hat man 2 Methoden mit dem Datentyp List.
C# bietet fast die vollkommenen Sprach-Features von C++, bis auf Metas. Operatorüberladung usw. Was Java z. B. nicht bietet. Auch die Handhabung von Referenzen & Pointern ist von Sprache zu Sprache anders. "Höher Angesiedelte" Sprachen als C++ mischen sogar Referenzen und Pointer in einem.
Etwas sehr interessantes ist auch, die Handhabung von primitiven Typen: C++ ist ja mehr eine "hybride Sprache", wo es primitive Typen gibt und OO. Java ist irgendwie eine Art "pseudo OO Sprache", da es Objektorierntiert ist, jedoch auch primitive Typen bietet (was eigentlich dem Hund in den Schwanz beist), während C# eine "reine" OO-Sprache ist, da alles von "object" ableitet.
Kurz und Knapp: Ja, fast alle gängigen Sprachen die wir hier im Forum anfinden und auf dem Markt sehr gefragt sind, schauen sich mehr oder weniger schöne Dinge von C und C++ ab, implementieren sie oft jedoch etwas radikal anders.
Daher ist die Aussage: "Kennt man eine, kennt man alle" meiner Meinung nach nur eine halbwahrheit, da sie nicht die Kniffe der jeweiligen Sprache beinhalten.