![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
《C++ Primer》
《C++ Primer》
devilboy恶魔男孩
这个作者很懒,什么都没留下…
展开
-
浅层复制与深层复制
浅层复制:利用默认复制构造函数,在析构时会出错(因为析构了两遍) 深层复制:利用成员函数 题目: 1. T& operator[](unsigned int i) ; T& operator[](unsigned int i)const; //为什么用 const? DynamicArray<int> iarray(length,-1); DynamicArray...原创 2020-04-28 22:57:47 · 234 阅读 · 1 评论 -
动态内存
程序拥有:1.静态内存;2.栈内存;3.自由空间 / 堆(储存动态分配的对象) 一. new 与 delete 运算符 1.new 运算符 1).动态分配内存 new 表达式在自由空间构造一个 int 型(无名)对象,并返回该对象的指针: int *pi = new int; 2).初始化对象 a.未显式初始化:默认初始化:内置类型或组合类型的值是未定义的,类类型用默认构造函数初始化; int ...原创 2020-04-28 17:44:40 · 121 阅读 · 0 评论 -
《C++ Primer》第七章 类
一.定义抽象数据类型(类) 1.成员函数: 1).声明和定义:成员函数的声明必须在类的内部,定义可在内部可在外部;非成员函数定义和声明都在类的外部; 2).引入this:(一定有一个对象在调用成员函数)成员函数通过一个隐式参数 this 来访问调用它的对象(this是常量指针,指向对象); 示例一: Sales_data total; total.isbn(); 当调用 Sales_data ...原创 2020-04-09 22:24:02 · 149 阅读 · 0 评论 -
c++基础:复合类型与const限定符
一.引用(左值引用) 1.定义引用类型 int ival = 1024 ; int &refVal = ival ; //对 int &refVal2 ; //错 引用与它的初始值绑定,必须初始化。 2.引用相关的操作 refVal = 2 ; //ival = 2 ...原创 2020-03-05 21:37:01 · 108 阅读 · 0 评论 -
c++基础:类
1.头文件 2.输入输出: 1).有一个全面的标准库来提供IO机制,提供IO机制的库是iostream库,包含两个基础类型istream和ostream; 2).标准库定义了四个IO对象,istream:cin标准输出,ostream:cout标准输出,cerr输出警告和错误消息,clog输出一般性信息; 3).<<和>>是输出输入运算符; 4).endl操纵符,作用:结束...原创 2020-03-04 21:11:11 · 129 阅读 · 0 评论