当前位置:  开发笔记 > 编程语言 > 正文

需要在c ++中定义所有可用的构造函数表单

如何解决《需要在c++中定义所有可用的构造函数表单》经验,为你挑选了1个好方法。

我有一个这样的课:

class A{
    private:
        init(const std::string& s=""){/*do something*/}
    public:
        A(){init();}
        A(const A&){init();}
        A(const std::string& s){init(s);}
};

它是否涵盖了可能被称为构造函数的所有形式?

我要做的是,任何对象创建必须首先调用该init()函数,即我需要定义可以隐式或显式调用的所有构造函数.



1> Yakk - Adam ..:
A(const A&)

一旦定义A(A const&)了编译器,就不会合成任何其他构造函数.唯一可调用的构造函数将是您声明的构造函数.

A(A&&)作为旁白,情况也是如此.

推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有