zoukankan      html  css  js  c++  java
  • c++ const 类

    01_const_class.cpp

    #include<iostream>
    using namespace std;
    
    struct A{
        int m;
        int n;
        A(){}
        A(int a,int b){m=a;n=b;}
        ~A(){}
    };
    
    int main()
    {
        const int a=10;
    //err:  a =200;
        // 如果类类型对象是只读的,其内部成员不是const,那么可以采用普通构造函数赋值
        const A b(10,20);
    //  b.m =20;
    //  b.n =200;
    
        return 0;
    }
    

    02_const_class_member.cpp

    #include<iostream>
    using namespace std;
    
    struct A{
        const int m;
        const int n;
        A()=default;
        //如果成员是const,那么要采用列表初始化
        A(int a,int b):m(a),n(b){}
        ~A(){}
    };
    
    int main()
    {
        const int a=10;
    //err:  a =200;
        // 如果类类型对象是只读的,其内部成员不是const,那么可以采用普通构造函数赋值
        const A b(10,20);
    //  b.m =20;
    //  b.n =200;
    
        return 0;
    }
    

    03_const_function.cpp

    #include<iostream>
    using namespace std;
    
    struct A{
        const int m;
        const int n;
        A()=default;
        //如果成员是const,那么要采用列表初始化
        A(int a,int b):m(a),n(b){}
        ~A(){}
        //如果访问只读成员,那么该方法也应该是const的
        int get_m()const{return m;}
        //任何方法只能以只读的方式访问const成员
        int set_m(int k)const{m=k;}
    };
    
    int main()
    {
        const int a=10;
    //err:  a =200;
        // 如果类类型对象是只读的,其内部成员不是const,那么可以采用普通构造函数赋值
        const A b(10,20);
        cout<<b.get_m()<<endl;
    //  b.m =20;
    //  b.n =200;
    
        return 0;
    }
    
  • 相关阅读:
    发布全文检索类库外包
    给即将面试的人
    实验四 Web服务器2
    电子公文传输系统验收2功能测试
    整数范围与类型转换
    实验三电子公文传输系统1个人贡献
    socket测试
    电子公文传输系统验收4开发基础
    Web服务器1socket编程
    算法测试(课上测试)
  • 原文地址:https://www.cnblogs.com/Sico2Sico/p/5384254.html
Copyright © 2011-2022 走看看