在C++中 :: 的三种意思
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
"::"
在C++中表示作用域,和所属关系。
"::"
是运算符中等级最高的,它分为i三种,分别如下:
ps ::在最开头就是全局
::在最开头开始,表示顶层命名空间(全局变量)
std::string <==> ::std::string
这样也可以。
::和 文件路径的 / 可以对照理解。(Linux系统下理解更加便捷,linux下面没有盘符之分, 只有一个盘
)
下面这俩其实是一样的
/usr/share/a.txt a.txt 位于 /usr/share目录下
/a.txt a.txt直接位于硬盘下。第一个/就代表硬盘根目录。
一、作用域符号:
作用域符号”::“的前面一般是类名称,后面一般是该类的成员名称,C++为例避免不同的类有名称相同的成员而采用作用域的方式进行区分。
例如:A,B表示两个类,在A,B中都有成员member。
class A{
int member;
};
class B{
int member;
};
A::member;
B::member;
那么:
1、A::member就表示类A中的成员member。
2、B::member就表示类B中的成员member。
二、全局作用域符号:
全局作用域符号:当全局变量在局部函数中与其中某个变量重名,那么就可以用 :: 来区分,例如:
int a; // 全局变量
void test ()
{
int a = ::a;//用全局变量,给本地变量a赋值
}
三、作用域分解运算符:
::是C++里的作用域分解运算符,“比如声明了一个类A,类A里声明了一个成员函数voidf(),但没有在类的声明里给出f的定义,那么在类外定义f时,就要写成voidA::f(),表示这个f()函数是类A的成员函数。例如:
class A
{
public:
int test();
}
int A::test()//表示test是属于A的
{
return 0;
}
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献9条内容
所有评论(0)