Array vom Typ Klasse?
-
Doch, habe ich
-
Ok, beide Header verwenden die selben include guards.
-
Supercomputer schrieb:
mobject mOBJECT; std::vector<mOBJECT> mobjects;Und bekomme diese Meldungen:
../phy.h:75:13: error: invalid use of non-static data member 'phy::mOBJECT'
..

std::vector<mobject> mobjects;In die spitzen Klammern kommt der Typ.
-
Caligulaminus schrieb:
Supercomputer schrieb:
mobject mOBJECT; std::vector<mOBJECT> mobjects;Und bekomme diese Meldungen:
../phy.h:75:13: error: invalid use of non-static data member 'phy::mOBJECT'
..

std::vector<mobject> mobjects;In die spitzen Klammern kommt der Typ.
Warum funktioniert es dann bei der hervorgehenden Schreibweise nicht?
#inlcude mobject.h // Enthält die Klasse mobjectSo includiert ist?
-
#include "mobject.h"
-
Sorry, vertippt.
Im original Code steht es richtig.
Qt meckert nämlich sofort, wenn was nicht stimmt.
Fehler gefunden

Hatte in der mobject.h
auch einen #include von phy.h drinn.
Diesen entfernt und es funktioniert
Danke an alle für die Hilfe
-
Eine Frage bleibt mir da noch, wie komme ich an die Werte wieder dran?
Wenn ich z.B. die Position auf der X-Achse wissen möchte, nutze ich die Methode
long double getpositionx();
-
vector<int> vec({1, 2, 3}); assert(vec[0] == 1); assert(vec[1] == 2); assert(vec[2] == 3);
-
Ethon schrieb:
vector<int> vec({1, 2, 3}); assert(vec[0] == 1); assert(vec[1] == 2); assert(vec[2] == 3);Den Code verstehe ich gerade leider nicht

Werde da gerade 3 Variablen deklariert, die dann mit dem Index "[]" abgerufen werden?
-
Du kannst mit einem vector genauso auf die Elemente zugreifen wie beim Array auch.
Ignorier das assert.vec[0] = val; foo = vec[1];
-
Nathan schrieb:
Du kannst mit einem vector genauso auf die Elemente zugreifen wie beim Array auch.
Ignorier das assert.vec[0] = val; foo = vec[1];Das habe ich auch gelesen, deswegen verwirrt mich das "assert(vec[0] == 1);" auch etwas, was bewirkt es?
-
Supercomputer schrieb:
Das habe ich auch gelesen, deswegen verwirrt mich das "assert(vec[0] == 1);" auch etwas, was bewirkt es?
-
Ok, danke