3

関数/メソッドのグループはあるがデータがないため、最近名前空間にアクセスしています。論理的な方法は、それらを名前空間内に貼り付けることです。(この質問に不足があれば申し訳ありません)。

私は次のものを持っています:

Math.h

namespace Math {

   double Euclidean();

}

数学.cpp

#include "Math.h"
double Math::Euclidean() {
  // Implementation
}

別の名前空間では、「Math」名前空間にアクセスする必要があります。

namespace foo {

     foo();
}

Foo.cpp

#include "Math.h"
#include "foo.h"

using namespace Math; 

foo::foo() {
  // use the math function
  Math::Euclidean();  

}

エラーが発生します:

Math’ is not a namespace-name

私はおそらく本当に単純なものを見逃していますが、それを理解できないようです。

私は以下を読み込もうとしました:ここですが、これはクラスを使用しているようで、クラスを使用せずにやりたかったのです。

4

1 に答える 1

4

この質問は 1 時間古くなっているので、@Bo Persson の直感的なコメントを宣伝します。

「math.h」も C 標準ヘッダーです。おそらくそれがコンパイラに含まれているものです。

Windows を使用している可能性が高く、ここでMath.hmath.h同じファイルを記述します。

ファイルの名前を変更して、標準ライブラリ ヘッダーと同じ名前を持たないようにし、コンパイラがそれを認識できるようにします。

于 2013-03-18T18:13:45.047 に答える