これが私の状況です。以下のように、ベクトルをパブリックに定義したクラスがあります。
class TrackObjects
{
public:
vector<MovingObj> movingObjects;
...
等
コンストラクタとすべてがあります。そのベクターとそのベクターのメソッドを使用しようとしているいくつかの実装を含む別の .cpp ファイルがあります。一例として、次のような関数の条件の一部です。
if (movingObjects.locX >= x1)
...
等
それは、movingObjects が宣言されていないこと、および最初にこの関数を使用することを教えてくれます。これは関数ではありません。私の知る限り、関数のように呼び出したことはありません/関数のように使用しようとしました。
このエラーが発生する理由を誰かが提案できますか?
編集: locX は、別のクラス MovingObj のパブリック変数です。TrackObj は、MovingObj が作成するオブジェクトのベクトルを作成するクラスです。申し訳ありませんが、私は本当にそれを指定する必要がありました. そのようです:
クラスMovingObj {
公衆:
MovingObj(int inId, int inLocX, int inLocY, int inWidth, int inHeight);
int id、locX、locY、幅、高さ;