class composition

Posted searchor

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了class composition相关的知识,希望对你有一定的参考价值。

#include<iostream>
using namespace std;

class Composition{
    public:
        //同时有类内初始值和初始化列表时候,最终值为初始化列表中的
        Composition():im(this),m(20){cout<<"Composition ctor 
";}
    private:
        int m=9;//类内初始值

        //内部定义类
        //可访问私有成员
        class Inside{
            public:
                Inside(Composition* cp){
                    cout<<"Inside ctor 
";
                    cp->m++;            //visit private member
                    cout<<cp->m<<endl;  //21
                }
        };
        Inside im;
};

class Composition2{
    public:
        Composition2():im(this),m(20){cout<<"Composition2 ctor 
";}
    private:
        class Inside2{
            public:
                Inside2(Composition2* cp){
                    cout<<"Inside2 ctor 
";
                    cp->m++;            //visit private member
                    cout<<cp->m<<endl;  //random number,成员初始化顺序导致
                }
        };
        Inside2 im;
        int m=9;
};
int main(){
    Composition cp;
                    //Inside ctor
                    //21
                    //Composition ctor

    Composition2 cp2;
                    //Inside2 ctor
                    //1
                    //Composition2 ctor
    return 0;
}

以上是关于class composition的主要内容,如果未能解决你的问题,请参考以下文章

vue composition api中的反应性数据未在模板中呈现

Xcode 快速开发 代码块

解决spring-boot启动中碰到的问题:Cannot determine embedded database driver class for database type NONE(转)(代码片段

你可以在graphql服务器模式文件中使用片段吗

java 反射代码片段

Xcode 快速开发 代码块 快捷键