上述问题是命名空间使用不当,产生的问题。
在通常情况下,建立一个工程都会包含头文件和函数具体的定义。在一些情况下,会使用命名空间。其实在刚开始学c++的时候,相信小伙伴们就会经常使用下面这句话:
using namespace std;
这就是使用命名空间,使用cout的时候可以直接按照下面的使用方法:
cout << "hello c++" << endl;
//而不是使用
std::cout << "hello c++" << std::endl;
在使用OpenCV也会使用
using namespace cv;
因为c++的第三方库特别多,然后对应函数名也会有相同,这时候程序就会很疑惑,运行哪个库中的函数,所以加上命名空间相当于给程序一个门牌号,找到对应的门牌号再找具体的函数。
O(∩_∩)O哈哈~其实自己写工程的时候,也会使用命名空间。通常在头文件中的定义形式如下:
namespace(
Function();
)
在.cpp文件中怎么写具体的函数的定义呢?
#include "...."
namespace (
Function()
{
....
}
)
在函数定义的时候不能写成下面的格式:
#include "...."
namespace::Function()
{
....
}
否则就会把报标题类似的错误O(∩_∩)O哈哈~周六(^o^)/~