虚函数的作用
摘要:c++虚函数是为了解决基类和派生类中函数重名问题的,使用一种方法访问两个类的函数,更方便。 https://www.cnblogs.com/jianyungsun/p/6361670.html 详细解释
阅读全文
c++数组,append,substr的用法
摘要:c++动态创建数组的方式: 一维的: int *a=new int[10]; vector<int> a{ }; 二维的: int **array; //array = (int **)malloc(sizeof(int *)*row);//方法一 array=new int *[row]; for
阅读全文
c++知识点4
摘要:1.空函数是不占字节的,还有就是typedef只是一个声明而已,也不占字节;枚举类型是用int型实现的,故占4个字节;联合类型中字节数是12+4(有一位是'\0') 2.调用无参构造函数即编译器默认生成的构造函数时,直接定义一个对象,不能在后面加一个括号,否则就为函数的定义,会产生错误。 3.#im
阅读全文
vector容器的insert方法
摘要:vector容器可以使用insert在特定的位置扩展新的元素,当且仅当新的vector大小超过当前vector容量时,会导致分配的存储空间自动重新分配。 容器采用数组作为底层存储,所以在vector末端以外的位置插入元素回导致容器将位置之后的元素重新定位到新位置,这样会导致比较低效相比较list和f
阅读全文
unordered_map和stringstream用法
摘要:1.unordered_map 无序映射是关联容器,用于存储由键值和映射值组合而成的元素,并允许基于键快速检索各个元素。 在unordered_map中,键值通常用于唯一标识元素,而映射值是与该关联的内容的对象,键和映射值的内容可能不同。 在内部,unordered_map中的元素没有按照他们的键值
阅读全文
unordered_set的用法
摘要:unordered_set是一种关联容器,set和map内部实现是基于RB-Tree,是有序的,unordered_set和unordered_map是基于hashtable。是无序的。 首先了解哈希表的机制。哈希表是根据关键码值进行直接访问的数据结构,通过相应的哈希函数处理关键字得到相应的关键码值
阅读全文
c++知识点3
摘要:1.c++里也可以用malloc分配内存,但是一般用new,new不仅分配内存,还创建了对象。 2.c++模板 模板是泛型编程的基础,泛型编程即以一种独立于任何类型的方式编写代码。 模板是创建泛型类或函数的蓝图或公式,库容器,迭代器和算法,都是泛型编程的例子,他们都使用了模板的概念。 每个容器都有一
阅读全文
c++小知识点2
摘要:1.虚函数 虚函数是在基类中使用virtual声明的函数,在派生类中重新定义基类中定义的虚函数时,会告诉编译器不要静态链接到该函数 2.c++接口(抽象类) 接口完成了类的行为和功能,而不需要完成类的待定实现。 c++接口是使用抽象类来实现的,抽象类与数据抽象互不混淆,数据抽象是一个把实现细节和相关
阅读全文
c++小知识点1
摘要:1.记住定义长度遍历不要定义成long,long是标识符!!!!!!!最好用length 2.private 成员和 protected 成员区别:保护成员在派生类(即子类)中是可访问的。 3.继承中的特点 有public, protected, private三种继承方式,它们相应地改变了基类成员
阅读全文
c++系统调用和函数调用的区别
摘要:1.系统调用(常见Linux及其分类表) 系统调用就是用户在程序中调用操作系统提供的一个子功能,也就是系统API,系统调用可以被看做特殊的公共子程序。操作系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如存储分配、进行I/O传输及管理文件等),都必须通过系统调用方式
阅读全文
c++中的引用和指针的区别
摘要:1.引用就是对变量起一个别名,变量还是原来的变量,没有重新定义一个变量。 int a = 10; int& n = a; n就是对a的引用,指向同一个地址空间。 一个变量可以有多个别名 引用必须初始化 引用只可以在变量初始化的时候引用一次,之后不可以在引用其他的变量 2. 引用只能在定义时初始化1次
阅读全文