代码改变世界

const函数

2012-11-01 18:05  kennyMc  阅读(275)  评论(0)    收藏  举报

c++中函数后面加const表示函数内部不能修改类的成员,试过传入参数到函数,然后内部修改是可以的。

#include <cstdlib>
#include <iostream>

using namespace std;

class Man
{
   public:
          char* name;
          int age;
          Man(char* _name,int _age)
          {
             name=_name;
             age=_age;
          }
          void Show(int* a) const
          {
            *a=20;
            cout<<*a<<endl;
            //age=12;编译报错 
            cout<<"name:"<<name<<" age:"<<age<<endl;
          }
};

int main(int argc, char *argv[])
{
    Man m("Kenny",22);
    int a=10;
    m.Show(&a);
    cout<<a<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}

 

本文版权归kennyMc和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。