Vektor in Klasse wie richtig initialisieren?
-
Ich habe eine Klasse
class test { public: vector<int> field; . . . . }
Wie kann ich diesen Vektor nun initialiseren zb Größe 5 Inhalt -1
vector<int> field(5,-1) funktioniert irgendwie innerhalb der Klasse nicht.
Muss man in der cppDatei einen Konstruktur erstellen?
Das habe ich per test::field versucht aber ging auch nicht.
lg
-
Mit einem aktuellen Compiler
#include <vector> #include <iostream> struct x { std::vector<int> v = std::vector<int>(5,-1); }; int main() { x aX; std::cout << "Size: " << aX.v.size() << "\n"; for( auto n : aX.v ) std::cout << n << ", "; std::cout << "\n"; }
-
vector<int> field = vector<int>(5,-1);
Okay so gehts. Danke;)
-
Geht auch per Initialisierungsliste im Kontruktor:
#include <vector> class test { std::vector<int> field; public: test() : field( 5, -1 ) { } };