0
私はヘッダで宣言された構造体をソースに実装しています。ソースファイルは、私の構造体変数で実行することができますが、私のメインはそれを見ることはできません。どうして ?構造体はAnotherSourceではなくソースで読み取ることができません
A.hpp
#include "stdafx.h"
#include <iostream>
#include <stdlib.h>
class A {
public:
struct myStruct {
int someInt;
} myStructVar;
void loadA();
};
A.cpp
#include "stdafx.h"
#include "A.h"
void A::loadA() {
myStructVar.someInt = 10;
std::cout << myStructVar.someInt << std::endl; // 10 OK
}
MAIN.CPP
#include "stdafx.h"
#include "A.h"
int _tmain(int argc, _TCHAR* argv[])
{
A a;
a.loadA();
std::cout << myStructVar.someInt() << std::endl; // Error: identifier "myStructVar" is undefined
system("PAUSE");
return 0;
}
エラーが
MAIN.CPP されていますError: identifier "myStructVar" is undefined.
ありがとうございます。
に 'myStructVar'は、グローバルスコープに存在しないが、むしろA''の範囲インチ'a.myStructVar'を使ってそれを参照してください。 –
最初のエラーを修正すると、より多くのエラーが発生します。 'someInt'とは何ですか? –
最初の問題(あなたが尋ねること)に関しては、おそらくあなたは[良い初心者の本](http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)と続行する前に読む? –