Performance von inline Funktionen
-
ananas schrieb:
Aber welche Konsequenzen ergeben daraus, die man beim Programmieren in der jeweiligen Sprache beachten sollte?
Ich kenne mich mit C# nicht genügend aus, um da qualifiziert was genaueres sagen zu können. Ich weiß nur, dass es viele Umsteiger gibt, die bei der teilweise recht ähnlichen bis identischen Syntax in Java/C#/C++ automatisch davon ausgehen, dass es in der anderen Sprache exakt das Selbe ist - und das ist eben nicht der Fall. Allgemein ist immer angesagt, die Features in beiden Sprachen gut zu verstehen, um auch die Unterschiede zu verstehen, die sicherlich manchmal sehr subtil sein können.
-
c++neuling2 schrieb:
@hustbear
Die direkte Programmausführung gibt mir die selben werte aus.warum sollte der Schleifeninhalt durch msvc bereinigt werden? In der Schleife werden doch relevante Operationen durchgeführt.
Nö.
Wo?
Du zählst da lustig, und dann verwirfst du das Ergebnis.
MSVC denkt sich "WTF?!?" und verwirft die ganze Schleife.
(Nicht nur der SchleifenINHALT, die ganze Schleife, alles weg)
-
ananas schrieb:
Könntest du das bitte näher erläutern. Mir ist klar, dass es sich bei Templates und Generics um zwei technisch verschiedene Umsetzungen des Konzepts generischer Programmierung handelt.
Aber welche Konsequenzen ergeben daraus, die man beim Programmieren in der jeweiligen Sprache beachten sollte?Generics und Templates sind zwei völlig verschiedene Dinge. Da Templates zur Compiletime verarbeitet werden, ist z.B. statischer Polymorphismus möglich. Mit Generics kannst du das vergessen. Generics sind ausreichend für sowas wie List<T> und das wars dann auch recht bald schon. C++ Templates dagegen sind für sich allein genommen schon turing-vollständig...