码迷,mamicode.com
首页 > 编程语言 > 详细

C++类的作用域和可见域

时间:2015-04-15 11:26:27      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:c++      全局变量   作用域   

        在类中定义的数据成员和函数成员的作用域是整个类,这些名称只有在类中(包含类的定义部分和类外函数的实现部分)是可见的,在类外是不可见的。如果发生“屏蔽”的现象,类的成员的可见域小与作用域,但此时可借助this指针或“类名::”的形式访问类成员,这有些类似于使用“::“访问全局变量。

      例子:

     extern int x=100;

     extern int z=100;

     class Example

   {

         int x;

         int y;

public :

              Example(int x,int y)

             {}

             void print(int x)

            {

                  cout<<"形参覆盖了成员X变量和全局X变量"<<x<<end1;   //形参X覆盖了全局变量和局部变量X

                  cout<<"成员X变量"<<(this->x)<<end1;

                  cout<<"成员X变量"<<Example::x<<end1;

                  cout<<"全局X变量"<<(::x)<<end1;                           //访问全局变量X

                  cout<<"全局Z变量"<<z<<end1;                               //没有形参对全局变量Z构成屏蔽,直接访问Z即可

            }

   }

 

int main()

(  

          Example  e;

          x.print(5);

          return 0;

         

)

 

输出结果:

5

0

0

100

200

C++类的作用域和可见域

标签:c++      全局变量   作用域   

原文地址:http://blog.csdn.net/u012975706/article/details/45055315

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!