C++ defaul construct :缺省构造函数(默认构造函数)

定义:第一种   构造函数没有参数,即是 A()形式的

第二种   构造函数的全部参数由缺省值提供,A(int a=0,int b=0)

编译器添加的默认构造函数的条件:   如果创建一个类你没有写任何构造函数,则系统会自动生成默认的无参构造函数,函数为空,什么都不做(这只是一种情况而言,此构造函数是trival

派生类和基类的关系:

我们通常说的派生类和基类,我们调用派生类的自定义的构造函数的时候,派生类会自动调用基类中的default construct函数,而不能调用基类中的其他构造函数

class Foo
{
private:
int val;
public:
Foo():val(){}
};
class Bar:public Foo
{
public:
char *str;
int i;
Bar(int i,char*s){
i=i;
str=s;
}
}; //不能通过,因为bar派生类不能调用基类中的defalut函数,因为不存在
class Foo
{
private:
int val;
Foo(int i):val(i){}
};
class Bar:public Foo
{
public:
char *str;
int i;
Bar(int i,char*s){
i=i;
str=s;
}
};
 
class Foo
{
private:
int val;
public:
Foo(int i):val(i){}
Foo():val(){}
};
class Bar:public Foo
{
public:
char *str;
int i;
Bar(int i,char*s){
i=i;
str=s;
}
};
base中同时定义普通构造函数和default construct函数的时候,派生类就可以调用

最新文章

  1. 关于XML序列化与CultureInfo
  2. sql-将字符串按指定字符分割插入指定表中
  3. logback
  4. ES6学习笔记(2)
  5. Xcode6.1标准Framework静态库制作方法。工程转Framework,静态库加xib和图片。完美解决方案。
  6. singleton(单件)-对象创建型模式
  7. WPF登陆窗口、主窗口切换问题
  8. Java构造方法的含义和使用
  9. JAVA生成RSA非对称型加密的公钥和私钥(利用JAVA API)
  10. Erlang-基础篇
  11. HDU 5800 To My Girlfriend 背包
  12. NOIP2014酱油记
  13. 【Spring】多数据源导致自动化配置失败问题
  14. 更改Qt Application为 Qt Console Application
  15. 混淆矩阵、准确率、精确率/查准率、召回率/查全率、F1值、ROC曲线的AUC值
  16. C#+EntityFramework编程方式详细之Database First
  17. Android 正则表达式验证手机号码
  18. sql对于字符串的处理
  19. Python encode() 方法(转)
  20. mpvue两小时,产出一个《点钞辅助工具》小程序

热门文章

  1. nltk 之 snowball 提取词干-乾颐堂
  2. JMS 之 Active MQ 的消息传输
  3. js实现水平伸缩菜单
  4. mybatis 传参是 list<string> 的注意事项
  5. MySQL InnoDB的一些参数说明
  6. Android 修改 TextView 的全局默认颜色。
  7. javaScript总结51: 变量查找规则与词法作用域
  8. WCF服务编程 读书笔记——第1章 WCF基础(1)
  9. 使用 console.time() 计算js代码执行时间
  10. 浅谈对MVC的理解