C++局部类的学习

    类也可以定义在函数体内,这样的类被称为局部类local class

    局部类只在定义它的局部域内可见。

    局部类的成员函数必须被定义在类体中。
    局部类中不能有静态成员
 
 
 
  1. # include <iostream> 
  2. using namespace std; 
  3.  
  4. int fun() 
  5.     class LocalClass 
  6.     { 
  7.     public
  8.         int num_; 
  9.         //局部类的实现只能在类中 
  10.         void Init(int num) 
  11.         { 
  12.             num_ = num; 
  13.         } 
  14.         void Display() 
  15.         { 
  16.             cout << "num = " << num_ << endl; 
  17.         } 
  18.  
  19.             //static int a = 10; error,局部类不能定义静态成员 
  20.         //因为静态成员的初始化要在文件作用域内 
  21.     }; 
  22.     //局部类只能在本函数中使用 
  23.     LocalClass lc; 
  24.     lc.Init(10); 
  25.     lc.Display(); 
  26.  
  27.     return 0; 
  28.  
  29. int main(void
  30.     fun(); 
  31.     /*   error   局部类只能在本函数中使用 
  32.      
  33.     LocalClass lc; 
  34.     lc.Init(10); 
  35.     lc.Display(); 
  36.     */ 
  37.  
  38.     return 0; 
 
运行结果:
 
 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值