摘要: 在C++中,提供了六个默认的基本函数,分别是构造、拷贝构造、赋值、析构、一般对象的取地址符重载、常量对象取地址符重载。 当类中没有明确声明这六个当中的前三个,实例化、拷贝、赋值对象均采用默认函数进行。 在一般使用过程中,如果类的私有数据成员无指针类型时,可以不写这些函数,可是当私有数据成员有指针时, 阅读全文
posted @ 2019-01-27 20:44 C_hp 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 合理的函数可提升时间和空间的利用率 运行结果及分析① 1:对象t的构造和析构 2:对象t1的拷贝构造与析构 3:t2的构造与析构 4:fun()函数的参数为对象,调用拷贝构造函数创建临时对象,其在fun函数结束后被析构掉 5:fun()函数内使用ST实例化类tmp,其在函数结束后被析构掉 6:函数返 阅读全文
posted @ 2019-01-27 14:30 C_hp 阅读(558) 评论(0) 推荐(0) 编辑
摘要: 拷贝构造函数拷贝构造函数在三种情况下会被使用1.使用对象来初始化对象时2.当函数的形参是对象时3.当函数的返回值为对象时 2,3情况的本质还是1 类中无明确的拷贝构造函数时系统会默认的提供一个拷贝构造函数 ①和②看起来虽然都是使用对象为对象赋值,但是其不同点在于,①中st1直接使用对象初始化,所以其 阅读全文
posted @ 2019-01-27 09:52 C_hp 阅读(660) 评论(0) 推荐(0) 编辑
摘要: 1.参数使用引用是为了增加效率,因为如果不是引用,参数为对象则会调用拷贝构造函数2.函数具有返回值是为了,若有连等赋值,保证其正常赋值3.判断语句是为了保证不会出现自己给自己赋值的情况4.返回值为引用是为了提升效率赋值函数表面看起来只是对象赋值给对象,实际上是=号前的对象调用operator=方法, 阅读全文
posted @ 2019-01-27 00:26 C_hp 阅读(260) 评论(0) 推荐(0) 编辑