关于C++作用域标识符

来源:百度知道 编辑:UC知道 时间:2024/05/15 03:16:03
在C++中,“::”表示“作用域标识符”,比如:“类名::函数名”,这样是表示该函数是该类的成员函数,但是象下面这种写法:“::函数名”,作用域标识符前面没有任何对象,请问各位朋友,这是什么意思???比如:::TranslateMessage(),把作用域标识符单独的放在某个函数前面是什么意思???

你说的它是作域标识符没有错,当::的前面没有任何对象时,它代表后面的对象或函数是全局的。

说明是全局函数.
你用过using namespace std;吧.
std是名字空间.如果你的程序没有using namespace std时
想用string类就得这样写: std::string str="abc";
因为string在std空间吧.而你要有个函数正好叫string,
就是这样用:
::string(xxx,xxx);
这样编译器就知道string不是std中的string类.而是一个全局的函数或变量或类.!

说明这是一个全局函数

也是作用域标识符,省略了类名而已。