Vector (Anfängerproblem)
-
Hi,
ich komme aus der Programmiersprache Python und bin noch etwas damit überfordert, dass man ständig Datentypen angeben muss.Ich wollte nach meinem altgewohnten Programmierstiel mal ein dyn. Array füllen und die Einträge printen. Da scheitert es auch schon.
Hier mal mein Code:
#include <iostream> #include <vector> using namespace std; void print(int vector){ for(int i=0; i<vector.size; i++){ cout<<i<<endl; } } main(){ vector<int> myVec; for(int i=0; i<=10; i++){ myVec.push_back(i); } print(myVec); }Sorry falls die Einrückungen noch etwas python like sind.
Danke,
Splinter
-
#include <iostream> #include <vector> using namespace std; //void print(int vector){ Das ist falsch //void print(std::vector<int> vec) Das kompiliert und macht was du willst. void print(const std::vector<int>& vec) //Das ist korrekt, da bei der Lösung darüber der Vektor kopiert wird, //hier wird eine Referenz auf einen konstanten Vektor übergeben. for(int i=0; i<vec.size(); i++){ // size() ist ein Funktionsaufruf. cout<<vec[i]<<endl; // Du greifst auf das i-te Element von vec zu. } } main(){ vector<int> myVec; for(int i=0; i<=10; i++){ myVec.push_back(i); } print(myVec); }
-
Edit: *heul* zu langsam ...

-
Besten Dank.
Syntax... long way to go.