码迷,mamicode.com
首页 > 编程语言 > 详细

c++对象初始化(翁恺c++公开课[10])

时间:2020-01-17 10:22:02      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:ror   img   编译   实现   默认构造函数   拷贝构造   style   ++   info   

c++对象初始化 就是去调用构造函数来完成初始化操作;

构造函数有无参数的构造函数、有参数构造函数、默认构造函数(编译器给我们实现的)...(拷贝构造函数之后说)

注意:默认构造函数只有在我们自己没有声明构造函数时编译器才会给我们制造一个没有参数的构造函数,如果我们定义了,编译器就不会管了

例子:看下边的C类,编译器并不会给我们初始化一个默认的构造函数

#include <iostream>

class A //默认构造函数 A() 这是在编译时,编译器给我们实现的 { }; class B { public: B() {} //无参数构造函数 }; class C { public: C(int i) {} //有参数构造函数 }; class D { public: D() {} //无参数构造函数 D(int i) {} //有参数构造函数 }; int main() { A a; B b; C c; //error 只有在没有构造函数的情况下编译器才会给我们制造一个默认的无参数的构造函数 C c1(1); //ok D d,d1(0); //ok return 0; }

技术图片

 报错说:找不到构造函数 C::C() 来初始化对象c

c++对象初始化(翁恺c++公开课[10])

标签:ror   img   编译   实现   默认构造函数   拷贝构造   style   ++   info   

原文地址:https://www.cnblogs.com/go-ahead-wsg/p/12203820.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!