.h文件 .cpp文件 业务应用main.c ...
分类:
编程语言 时间:
2019-03-23 15:51:35
阅读次数:
179
1.C++语言简介 4个特点: 1.继承了C语言的优点与语法,简介灵活,数据结构丰富,运行效率高 2.面向对象编程OOP(封装性、继承性和多态性) 3.增加了一些特性(引用、友元、重载) 4.标准模板库(算法、容器、迭代器) 2.类 2.1访问控制: 访问限定符:public公有的、protecte ...
分类:
编程语言 时间:
2019-03-22 17:05:16
阅读次数:
195
1、关于构造函数 1)用构造函数确保初始化 对于一个空类 class Empty { };编译器会自动声明4个默认函数:构造函数,拷贝构造函数,赋值函数,析构函数(当然,如果不想使用自动生成的函数,就应该明确拒绝),这些生成的函数都是public且inline。构造函数对数据成员进行初始化,使用未初 ...
分类:
编程语言 时间:
2019-03-13 14:59:19
阅读次数:
196
构造函数与析构函数 OOP第二课 1 构造函数 1.1 构造函数具有一些特殊的性质 1.2 定义构造函数的一般形式 1.3 利用构造函数创建对象 2 成员初始化表 3 缺省参数的构造函数 4 重载构造函数 5 拷贝构造函数 5.1 自定义拷贝构造函数 5.2 缺省的拷贝构造函数 5.3 调用拷贝构造 ...
分类:
编程语言 时间:
2019-03-13 00:03:20
阅读次数:
194
前言 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 当你需要从A的实例得到一份与A内容相同,但是又互不干扰的实例的话,就需要使用原型模式。 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。这个其实和C++的拷贝构造函数的作用是相似的(但不相同),实际上就是动态抽取 ...
分类:
其他好文 时间:
2019-03-05 15:37:34
阅读次数:
155
操作 效果 vector<T> c 产生空的vector vector<T> c1(c2) 产生同类型的c1,并将复制c2的所有元素 vector<T> c(n) 利用类型T的默认构造函数和拷贝构造函数生成一个大小为n的vector vector<T> c(n,e) 产生一个大小为n的vector, ...
分类:
编程语言 时间:
2019-03-02 21:15:36
阅读次数:
257
[TOC] 一、为什么要重载赋值运算符 ? 在前面的内容中讲解 "拷贝构造函数调用的时机" 时说明了初始化和赋值的区别:在定义的同时进行赋值叫做 ,定义完成以后再赋值(不管在定义的时候有没有赋值)就叫做 。初始化只能有一次,赋值可以有多次。 ? 当以拷贝的方式初始化一个对象时,会调用拷贝构造函数;当 ...
分类:
编程语言 时间:
2019-02-26 01:04:41
阅读次数:
230
形式:Class_name(const Class_name & other){};//他接受一个指向类对象的常量应用作为参数。 const关键字的作用是保护other对象中的内容不发生变化。 1、何时调用拷贝构造函数: 新建一个对象并将其初始化为同类现有对象时,拷贝构造函数都将被调用。 这四种情况 ...
分类:
其他好文 时间:
2019-02-23 18:20:41
阅读次数:
240
一、拷贝构造函数调用的时机 ? 当以拷贝的方式初始化对象时会调用拷贝构造函数,这里需要注意两个关键点,分别是 和`初始化对象` 1. 初始化对象 初始化对象是指,为对象分配内存后第一次向内存中填充数据,这个过程会调用构造函数,对象被创建后必须立即初始化。也就是说只要创建对象就会调用构造函数。 2.初 ...
分类:
编程语言 时间:
2019-02-21 23:17:03
阅读次数:
230
[TOC] 一、对象的拷贝 拷贝和复制是一个意思,对计算机来说就是利用已经存在的数据创建出一份新的和原有数据一模一样的数据。在C++中,拷贝是指用已经存在的对象创建出一个新的对象。严格来说,对象的创建包括两个阶段,首先要分配内存空间,然后再进行初始化。 分配内存空间就是在,就是在堆、栈或者全局数据区 ...
分类:
编程语言 时间:
2019-02-21 00:13:23
阅读次数:
192