C++构造函数不够用

构 A{
    串 a,b;
    显 A(串&e){//有它后
        a=e.子串(0,1);
        b=e.子串(0,2);
    }
};
空 主(){
    串 a{"ab"},b{"ac"};
    A e{a,b};
}

这里,想用显 A(串&e)来单独从1个串来构造.但又想保留两个a,b来构造的能力,然而,没用!
编译不了,加上这句

    A(串 a,串 b)=默认;//就没用.

没用,同样没用!我们这样:

构 A{
    串 a,b;
    空 切换(串&e){//有它后
        a=e.子串(0,1);
        b=e.子串(0,2);
    }

};
空 主(){
    串 a{"ab"},b{"ac"};
    A e;e.切换(a);
    A c{a,b};
}

用切换,来初化它.这时就保留了原来的两个构造的能力,同样,也可以先A e,再切换来达到我们另一种构造的目的!

posted @   zjh6  阅读(11)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示