六、作用域
? ? ?作用域是一個標識符在程序正文中有效的區域。C++中標識符的作用域有函數原型作用域,局部作用域,類作用域,和命名空間作用域。
1、函數原型作用域
在函數原型聲明是形式參數的作用范圍就是函數原型作用域。
2、局部作用域
函數形參列表中形參的作用域,從形參列表的聲明中開始,到整個函數體結束為止。函數體內聲明的變量,其作用從聲明處開始,一直到聲明所在的塊結束的大括號為主。具有局部作用域的變量也稱局部變量。
3、類作用域
(1)、如果在X的成員函數中沒有聲明同名的局部作用域標識符,那么在該函數內可以直接訪問成員M;
(2)、通過表達式X·M或者X::M。這正是程序中訪問對象成員的最基本方式。
(3)、通過ptr->m這樣的表達式,其中ptr為指向x類的一個對象的指針。
4、命題空間作用域
#includeusing namespace std;
int i;
namespace Ns
{
int j;
}
int main()
{
i=5;
Ns::j=6;
{
using namespace Ns;
int i;
i=7;
cout<<"i="<<i<<endl;
cout<<"j="<<j<<endl;
}
cout<<"i="<<i<<endl;
return 0;
}