Bei C++ Grundlagenkenntnisse in C überflüssig?
-
redrew99 schrieb:
Ich kann mir nicht vorstellen, daß man Schleifen von Java oder C# 1:1 übertragen und kompilieren kann.
Lass mich mal schnell sehen:
int sum = 0; for(int i = 0; i < 10; ++i) { sum += i; }int sum = 0; for(int i = 0; i < 10; ++i) { sum += i; }int sum = 0; for(int i = 0; i < 10; ++i) { sum += i; }Kompilert bei allen!
Weisst du, was dafür lustig ist? Unter C89 kompiliert es nicht! Und von C89 wurde C++ eigentlich abgespalten. In C89 müsstest du es so schreiben:
int i; int sum = 0; for(i = 0; i < 10; ++i) { sum += i; }Ansonsten: Siehe Beitrag von Artchi.
Grüssli
-
314159265358979 schrieb:
Der vector erlaubt es, aber nicht in O(1) sondern O(N). Die verkettete Liste in der STL heißt std::list.
Falsch. std::forward_list
-
Wrong Answer Noob schrieb:
314159265358979 schrieb:
Der vector erlaubt es, aber nicht in O(1) sondern O(N). Die verkettete Liste in der STL heißt std::list.
Falsch. std::forward_list
std::forward_list ist nicht Teil der STL.
-
Wrong Answer Noob schrieb:
314159265358979 schrieb:
Der vector erlaubt es, aber nicht in O(1) sondern O(N). Die verkettete Liste in der STL heißt std::list.
Falsch. std::forward_list
Beides sind verkettete Listen. std::list ist eine doppelt verkettete, std::forward_list eine einfach verkettete.