Wie mit "..." umgehen?
-
Aber eigentlich ist die ellipse doch dann echt nützlich für funktionen wo man z.b. nicht weiß wieviel integer übergeben werden? einfach (int a, int b, int ...) machen und schon hat man auch eine typsicherheit
-
Da gibts etwas, dass sich Datenfeld nennt und deutlich kompfortabler ist.
-
root123 schrieb:
einfach (int a, int b, int ...) machen und schon hat man auch eine typsicherheit
Inwiefern hat man da Typsicherheit? Das deklariert eine Funktion mit 3 Pflichtargumenten vom Typ int (das dritte davon namenlos) und unbestimmten weiteren Argumenten.
-
@helium wie kann ich denn ein array an eine funktion übergeben ?
@bashar vielleicht verstehe ich auch was falsch aber unter typsicherheit dachte ich das du meinst wenn man (...) kann alles übergeben werden, float, int, double usw. mit int ... wär das gegessen.
Was meinst du dann?
-
-
Du scheinst zu glauben, an foo(int ...) könne man nur ints übergeben.
-
hmm ok das dachte ich auch
aber gut das du mich belehrt hast
@dEus
hast du evt ein beispiel? habs per referenz versuch, ging nur mit einzelnen arrayfeldern aber nicht mit dem ganzen packet
-
void foo(int *pIntArray, int nElements) { } ... int Array[5]={1,2,3,4,5}; foo(Array,5);
-
so gehts auch:
void foo(int IntArray[], int nElements) { } ...
-
"..." kann darauf hindeuten da eine eventuelle reimplementierung bzw ein weiteres neuargument implementiert wird.