C++
文章平均质量分 69
Pisces_LQ
这个作者很懒,什么都没留下…
展开
-
C++ 引用变量
1.引用 引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。 引用的声明方法:类型标识符 &引用名=目标变量名;例如 int a = 10; int& b = a; 其中,b就是a的引用,引用相当于别名,它们两个占同一块空间,两个变量地址相同。 引用的特点: 1. 一个变量可取多个别名 2. 引用必须初始化 3. 引用只能在初始化的时候引用一次,不能原创 2017-07-10 16:38:49 · 600 阅读 · 0 评论 -
C++ 函数重载
在C语言中,实现功能相同,但参数数量或类型不同的函数,函数名必须不同,例如:double Add1(double a, double b); int Add2(int a, int b); C++是C语言的继承,c++在c语言的基础上新增了很多特性,其中具有重载。例如,可以定义一组原型如下的 这五个函数中,参数数目的、参数类型和参数的排列顺序就是函数的参数列表,也称为函数特征标,在使用上述的pr原创 2017-07-10 14:43:33 · 315 阅读 · 0 评论 -
动态内存管理
1.C的动态内存管理细节 C语言中,使用malloc/calloc/realloc/free进行动态内存管理 malloc():接受一个参数——所需内存字节。分配内存后,返回那块内存的第一个字节的地址,用指针变量来接收。所以,传统上将malloc()定义为指向char的指针类型。函数malloc()可用来返回数组指针、结构指针等等。如果malloc()找不到所需的空间,它将返回空指针。原创 2017-07-21 09:32:37 · 400 阅读 · 0 评论 -
写时拷贝-Copu On write
浅拷贝 浅拷贝也称为位拷贝或者值拷贝,所谓的浅拷贝就是当在进行对象的复制时,只是进行对象的数据成员的拷贝,其中默认的拷贝构造函数也是浅拷贝。大多数情况下,使用浅拷贝是没有问题的,但是当出现动态成员,就会出现问题。 浅拷贝的缺陷:浅拷贝对于指针成员不可行。多个对象共用同一块空间,同一内存地址,但是在调用析构函数释放空间的时候,多次调用析构函数,这块空间被释放了多次,此时程序就会崩溃。 写时拷贝原创 2017-08-01 12:22:22 · 325 阅读 · 0 评论 -
模板的分离编译
1.模板 我们要理解模板的分离编译,首先,了解什么是模板: 模板是C++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。 模板是一种对类型进行参数化的工具; 通常有两种形式:函数模板和类模板; 函数模板针对仅参数类型不同的函数; 类模板针对仅数据成员和成原创 2017-10-06 10:45:19 · 249 阅读 · 0 评论 -
map_set
std::maptemplateSTL map1、map的使用map的底层是红黑树 insert参数类型:pair类型(两个) erase可以删除一个位置(通过find找到迭代器)还可以删除迭代器区间 pair参数:1(key_type:第一个参数) 2(mapped_type:第二个参数) 遍历需要迭代器 TreeIterator { Node* node;}Node* nod原创 2017-11-05 20:24:09 · 242 阅读 · 0 评论