首页 > 代码库 > C++构造函数原则
C++构造函数原则
今天没事看了下C++的构造函数原则,顺便做个笔记,毕竟好记性不如烂笔头,废话不多说,直奔主题了了。
C++构造函数原则归结起来有下面的几条:
1、如果子类没有定义构造函数,则子类默认调用父类无参数的构造函数。
2、如果子类定义了构造函数,不管子类的构造函数是有参数还是没有参数的,在创建子类时,没有显示调用父类的构造函数,则首先调用父类的无参的构造函数,在调用子类自己的构造函数。
3、在创建子类的时候,如果子类没有显示调用父类的构造函数,父类定义了自己无参数的构函数,这时会首先调用父类无参的构造函数。
4、在创建子类对象时,如果子类没有显示调用父类的构造函数,且父类仅仅定义了有参数的构造函数,则会报错。正确的方法是子类必须显示调用父类的有参数的构造函数,
5、在创建子类对象时,如果子类显示调用了父类的构造函数,此时子类必须使用初始化类表来初始化父类构造函数。
以上,归结起来就是子类必须先调用父类的构造函数,再调用自己的构造函数。
C++构造函数原则
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。