c++中的符号::代表什么意思?

2025-04-12 10:34:34
推荐回答(2个)
回答1:

::是作用域分解运算符。
对于一个大型软件,许多人共同开发,且要调用数百种第三方库,想保证没有命名冲突几乎是不可能的,标准c++解决这类问题的办法是使用名字空间,它是标示符使用范围的一个附加层,能够使程序员创造有意义的符号名称,而不顾及其他人的工作,简而言之,名字空间即为一个命名区域,名字空间中所有由程序员创建的标识符可以确保是唯一的,为了达到上述目的,因此要指定名字空间的名称和作用域限定操作符::作为那些名字的标识符前缀。
比如,定义定义以下名字空间:
namespace song
{int Num=10;}
如果不使用前缀::编译器就不知道标识符Num的含义。

回答2:

如果是::前面没有东西的话就是说你用的这个函数是全局函数。
如果前面有的话就是一个函数的成员变量或函数。