首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命名空间错误‘不是命名空间名称’

命名空间错误‘不是命名空间名称’
EN

Stack Overflow用户
提问于 2013-03-19 01:07:13
回答 1查看 9.9K关注 0票数 3

我最近访问了命名空间,因为我有一组函数/方法,但没有数据,所以逻辑上的方法是将它们放在命名空间中。(如果这个问题缺少任何东西,很抱歉)。

我有以下几点:

Math.h

代码语言:javascript
复制
namespace Math {

   double Euclidean();

}

Math.cpp

代码语言:javascript
复制
#include "Math.h"
double Math::Euclidean() {
  // Implementation
}

在另一个名称空间中,我需要访问"Math“名称空间:

代码语言:javascript
复制
namespace foo {

     foo();
}

Foo.cpp

代码语言:javascript
复制
#include "Math.h"
#include "foo.h"

using namespace Math; 

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

}

我得到了错误:

Math’ is not a namespace-name

我可能遗漏了一些非常简单的东西,但是,我似乎不能理解它。

我试着阅读了以下内容:Here,但它似乎使用了一个类,我想不使用类来实现它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-19 02:13:45

这个问题已经过时一个小时了,所以我正在推广@Bo Persson的直观评论。

"math.h“也是一个C标准头。也许这就是编译器所包含的内容。

您可能正在使用Windows,其中Math.hmath.h描述相同的文件。

重命名您的文件,使其不具有与标准库头相同的名称,编译器将看到它。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15482692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档