c++中::有什么特点?

 我来答
跪着作揖
高粉答主

2022-08-06 · 繁杂信息太多,你要学会辨别
知道答主
回答量:598
采纳率:100%
帮助的人:16.9万
展开全部

表示作用域,和所属关系。

::是运算符中等级最高的,它可以分为以下三种:

1、global scope(全局作用域符),用法(::name)

2、class scope(类作用域符),用法(class::name)

3、namespace scope(命名空间作用域符),用法(namespace::name)他们都是左关联(left-associativity)他们的作用都是为了更明确的调用你想要的变量,如在程序中的某一处你想调用全局变量a,那么就写成::a;

如果想调用class A中的成员变量a,那么就写成A::a,另外一个如果想调用namespace std中的cout成员,你就写成std::cout(相当于using namespacestd;cout)意思是在这里我想用cout对象是命名空间std中的cout(即就是标准库里边的cout)。

扩展资料

::在C++中的具体用法:

1、作用域符号:

前面一般是该类名称,后面是该类的成员名称。C++为避免不同的类有相同的成员而采用作用域的方式进行区分,eg:A,B表示两个类,在A,B中都有成员member,那么:A::member表示A中的成员member,B::member表示B中的成员member。

2、全局作用域符号:

当全局变量在局部函数中与其中某个变量重名时,可以用::来区分,否则局部变量会屏蔽全局变量。

3、作用域分解运算符:

比如声明了一个类A,类A里声明了一个成员函数void f(),但没有在类的声明里给出f函数的定义,那么在类外定义f时,就要写成void A::f(),表示这个f函数是类A的成员函数。

参考资料百度百科-C++

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式