随笔分类 -  c++

摘要:1. 预处理,生成 .i 的文件。(input) 2. 将 .i的文件转换成汇编语言,生成 .s 的文件 3.生成机器语言文件,.o的文件 4.连接目标代码,生成可执行文件 .out 阅读全文
posted @ 2022-11-04 22:18 天凉好个秋秋 阅读(52) 评论(0) 推荐(0)
摘要:1. 基本内置数据类型和占用字节 char/unsigned char/signed char 1B int/ unsigned int / signed int 4B short int 2B long int 64位系统: 8B 32位系统:4B float 4B double 8B 2.字节对 阅读全文
posted @ 2022-11-04 22:08 天凉好个秋秋 阅读(23) 评论(0) 推荐(0)
摘要:浅拷贝复制的是指向对象的地址,而不是复制对象本身。相当于创建一个快捷方式。 深拷贝是新建一个一模一样的对象,该对象与原对象不共享内存,修改新对象也不会影响原对象 阅读全文
posted @ 2022-11-04 15:44 天凉好个秋秋 阅读(17) 评论(0) 推荐(0)
摘要:容器分为顺序容器和关联容器。顺序容器连续存储,支持随机访问。 一、顺序容器 1. array 即 数组,大小固定,元素按照内存地址线性排列。 2.vector 动态分配空间,使用“预分配空间策略”。 vector 在元素访问上效率最高,在尾部增删元素的效率也相对最高。如果调用者有在尾部以外的地方增删 阅读全文
posted @ 2022-11-02 15:55 天凉好个秋秋 阅读(370) 评论(0) 推荐(0)
摘要:1.指针变量和数组变量 2.左值与右值 阅读全文
posted @ 2021-12-08 14:59 天凉好个秋秋 阅读(35) 评论(0) 推荐(0)
摘要:b 2.unordered_map自定义键类型需要自己定义,不然会报错 由于unordered_map是采用哈希实现的,对于系统的类型int, string等,都已经定义好了hash函数,所以如果我们引入新的自定义类型的话,系统并不知道如何去计算我们引入的自定义类型的hash值,所以我们就需要自己定 阅读全文
posted @ 2021-12-05 22:38 天凉好个秋秋 阅读(44) 评论(0) 推荐(0)
摘要:2.常量区不可以改变值,但是栈区可以。 1.尽可能的少创建临时变量,临时变量的创建,返回的时候涉及拷贝构造 2.前置++效率比较高,因为i++,先返回i,再返回i++;但是 ++i,直接返回 ++i。 move是资源让渡 巨大省。 阅读全文
posted @ 2021-12-04 22:02 天凉好个秋秋 阅读(32) 评论(0) 推荐(0)
摘要:清空缓存区的脏数据 阅读全文
posted @ 2021-12-04 21:46 天凉好个秋秋 阅读(33) 评论(0) 推荐(0)
摘要:c++中允许在结构体当中定义函数,它的用法和类的用法很像,不过与类有一个区别在于,struct中定义的函数和变量都是默认为public的,但class中的则是默认为private。 阅读全文
posted @ 2020-11-20 20:04 天凉好个秋秋 阅读(1027) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2020-11-20 17:13 天凉好个秋秋 阅读(64) 评论(0) 推荐(0)
摘要:多态含义 不同的对象收到相同的消息做出了不同的反应,比如让动物叫,小猫发出喵喵,小狗发出汪汪。 多态性的实现和联编有关。其中在运行之前就完成的联编称为静态联编,而在程序运行时才完成的联编叫动态联编。 静态联编是系统在编译时就决定如何实现某一动作,效率高,但是要求编译时就知道函数的全部信息,并且不够灵 阅读全文
posted @ 2020-05-11 16:56 天凉好个秋秋 阅读(177) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2020-04-23 15:02 天凉好个秋秋 阅读(99) 评论(0) 推荐(0)
摘要:引入友元的原因 类的私有成员只能通过类的成员函数访问,有时候需要在类的外部访问类的私有成员。在不放弃私有成员安全性的情况下,使得一个普通函数或者类的成员函数可以访问到封装于某一类中的信息。 友元是一扇通往私有成员的后门。 友元函数 可以是非成员函数,也可以是另一个类的成员函数,统称为成员函数。 友元 阅读全文
posted @ 2020-04-23 11:46 天凉好个秋秋 阅读(474) 评论(0) 推荐(0)
摘要:windows操作系统,32位机中, char: 1个字节 short: 2个字节 int: 4个字节 long: 4个字节 windows操作系统,64位机中, char: 1个字节 short: 2个字节 int: 4个字节 long: 4个字节 阅读全文
posted @ 2020-04-22 18:05 天凉好个秋秋 阅读(6842) 评论(0) 推荐(0)
摘要:二维数组指针 定义一个指向 a 的指针变量 p: int (*p)[4] = a; 1) p 指向数组 a 的开头,也即第 0 行;p+1前进一行,指向第 1 行。 2) *(p+1)表示取地址上的数据,也就是整个第 1 行数据。 3) *(p+1)+1表示第 1 行第 1 个元素的地址。 *(p+ 阅读全文
posted @ 2020-04-22 17:13 天凉好个秋秋 阅读(844) 评论(0) 推荐(0)
摘要:地址作为实参,表示实参与形参代表同一个对象; 实参是数值,此时形参是实参的备份 阅读全文
posted @ 2020-04-22 16:25 天凉好个秋秋 阅读(130) 评论(0) 推荐(0)
摘要:函数调用开销比较大,需要将当前程序的一些信息保存到栈中。 当程序中对某一个功能不复杂的函数频繁调用时,可以用inline修饰,当做内联函数。调用内联函数,c++编译器会将函数体中的代码插入到调用该函数的语句处,用实参代替形参。 注意:内联函数使用前必须进行完整的定义; 这是用空间换时间的措施,函数不 阅读全文
posted @ 2020-04-22 15:44 天凉好个秋秋 阅读(492) 评论(0) 推荐(0)
摘要:一个类的若干对象,拥有各自的数据成员,但是成员函数是一样的,可以共享。 为了让成员函数知道当前调用自己的是哪个对象,采用了this指针,this指针是隐式使用的,实际上是作为参数传递给成员函数。 阅读全文
posted @ 2020-04-22 15:40 天凉好个秋秋 阅读(119) 评论(0) 推荐(0)
摘要:auto 自动存储变量的关键字,也就是申明一块临时的变量内存。所有局部变量默认的存储类。 Register 早期c语言不会对代码进行优化,使用register会要求编译器将变量A直接放入寄存器中,提高读取速度。 C语言中register关键字修饰的变量不可以被取地址,但是c++中进行了优化。 c++ 阅读全文
posted @ 2020-04-22 11:51 天凉好个秋秋 阅读(475) 评论(0) 推荐(0)
摘要:局部变量和全局变量可以同名,但是局部变量会屏蔽全局变量。 具体来说,全局变量和局部变量的区别如下: 1. 作用域不同:全局变量的作用域为整个程序,而局部变量的作用域为当前函数或循环等 2. 内存存储方式不同:全局变量存储在全局数据区中,局部变量存储在栈区 3. 生命期不同:全局变量的生命期和主程序一 阅读全文
posted @ 2020-04-17 09:31 天凉好个秋秋 阅读(1069) 评论(0) 推荐(0)