次の 2 つの C++ 名前空間があります。
#ifndef TRANS_H
#define TRANS_H
namespace Trans
{
double Delta[3];
double calcDeltaPositions();
//and more that I will leave out for simplicity
};
#endif
#ifndef SPACE_H
#define SPACE_H
namespace Space
{
double vels[3];
void calcAccel(double DeltaVal[3]);
};
#endif
これで、main.cpp ファイルができました。
#include "Trans.h"
#include "Space.h"
int main()
{
double pos = Trans::calcDeltaPositions();
Space::calcAccel(Trans::Delta);
return 0;
}
Delta が main.o と Trans.o で定義された乗算であると主張するエラーが何度も発生します。Delta が Trans に存在することを宣言しただけなので、これはどうしてでしょうか?