c++非常小的有关问题,请大家赐教
c++非常小的问题,请大家赐教
请问在C++类中以下两个问题有啥区别呀?
:和::
------解决方案--------------------
::是个限定符号
:一般用与构造函数初始化的时候
如:class a
{public:
class():aa(a){}
int aa;
};
int main()
{cout < <a::aa < <endl;
return 0;
}
------解决方案--------------------
:一般用在两个地方:1.构造函数的初始化列表;2.类声明中表示继承关系。
::则用来进行名字解析或者作用域解析
名字解析:std::cout < < "使用std名字空间的cout ";
作用域解析:
int aa = 0;
void f()
{
int aa = 0;
aa = 2;//f()中的aa
::aa = 2;//外部的aa
}
别的用途还没见过,或者现在想不起来了呵呵
请问在C++类中以下两个问题有啥区别呀?
:和::
------解决方案--------------------
::是个限定符号
:一般用与构造函数初始化的时候
如:class a
{public:
class():aa(a){}
int aa;
};
int main()
{cout < <a::aa < <endl;
return 0;
}
------解决方案--------------------
:一般用在两个地方:1.构造函数的初始化列表;2.类声明中表示继承关系。
::则用来进行名字解析或者作用域解析
名字解析:std::cout < < "使用std名字空间的cout ";
作用域解析:
int aa = 0;
void f()
{
int aa = 0;
aa = 2;//f()中的aa
::aa = 2;//外部的aa
}
别的用途还没见过,或者现在想不起来了呵呵