上一页 1 2 3 4 5 6 7 8 ··· 15 下一页
摘要: 细说new与malloc的10点区别 C++ 自由存储区是否等价于堆? 浅谈new/delete和malloc/free的用法与区别 new和malloc都是在对上开辟内存,但尽量使用new。 使用malloc的注意事项:(1)程序猿必须实现确定对象的长度;(2)malloc返回一个void*指针, 阅读全文
posted @ 2019-01-08 09:59 两猿社 阅读(447) 评论(0) 推荐(0) 编辑
摘要: 构造函数和析构函数,分别对应变量的初始化和清理,变量没有初始化,使用后果未知;没有清理,则会内存管理出现安全问题。 构造函数和析构函数写法 构造函数:与类名相同,没有返回值,不写void,可以发生重载,可以有参数,编译器自动调用,只调用一次。 析构函数:~类名,没有返回值,不写void,不可以发生重 阅读全文
posted @ 2019-01-07 19:33 两猿社 阅读(592) 评论(0) 推荐(0) 编辑
摘要: 内联函数 宏可以避免函数调用带来的开销,但存在两个问题:1)宏没有作用域,没有类型检测,另外定义宏时,需要时刻注意加括号,除此之外,当传入变量自增时,会出现不可避免的错误。2)C++中宏不能作为类的成员函数,因为预处理器不能访问类成员。 内联函数主要为了替代宏,另外,类中的成员函数默认加了inlin 阅读全文
posted @ 2019-01-03 18:35 两猿社 阅读(421) 评论(0) 推荐(0) 编辑
摘要: 初识类(class&struct) 面向对象三大特性:封装、继承和多态。其中不得不谈的就是类,通过类创建一个对象的过程叫实例化,实例化后使用对象可以调用类成员函数和成员变量,其中类成员函数称为行为,类成员变量称为属性。类和对象的关系:类是对象的抽象,对象是类的实例。 从上面的代码中可以看出,在类内或 阅读全文
posted @ 2019-01-03 16:10 两猿社 阅读(830) 评论(0) 推荐(0) 编辑
摘要: 直接上代码,分别是栈上开辟内存,堆上开辟内存 如果是用指针来复制数组,不要用以下代码 因为没有开辟内存,直接对指针自增会出现访问冲突 阅读全文
posted @ 2019-01-02 21:34 两猿社 阅读(2450) 评论(0) 推荐(0) 编辑
摘要: 引用,用途是对变量取别名,本质是一个指针常量。 1.初始化 &写在左侧为引用,写在右侧为取地址,引用用法:Type &别名 = 原名。 引用必须初始化,另外初始化后不能再修改指向其他变量 对数组起别名 2.参数传递方式 引用传参和地址传参的作用是一样的,都是为了修改变量值,其中引用后面的a和b相当于 阅读全文
posted @ 2019-01-01 21:32 两猿社 阅读(304) 评论(0) 推荐(0) 编辑
摘要: C++对C的扩展 1. 双冒号::作用域运算符 代码中对同一个变量多次声明,在代码块中使用时,局部变量会将全局变量隐藏。若在代码块使用变量前添加::,表示为全局变量。 ::表示作用域运算符,如常见的std::cout,std::endl;等,表示cout和endl是std作用域下的标识符。 2. 命 阅读全文
posted @ 2019-01-01 15:18 两猿社 阅读(1921) 评论(0) 推荐(0) 编辑
摘要: 彻底搞定C指针-函数名与函数指针 函数名&函数名取地址 函数指针 通常我们可以将指针指向某类型的变量,称为类型指针(如,整型指针)。若将一个指针指向函数,则称为函数指针。 函数名的意义 函数名代表函数的入口地址,同样的,我们可以通过根据该地址进行函数调用,而非直接调用函数名。 另外,还有以下结论: 阅读全文
posted @ 2018-12-29 21:34 两猿社 阅读(3312) 评论(0) 推荐(0) 编辑
摘要: sprintf常用于连接字符串或数字转字符串 sscanf常用于跳过数据或匹配字符 阅读全文
posted @ 2018-12-27 17:29 两猿社 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 拷贝有两种:深拷贝,浅拷贝 浅拷贝:拷贝过程中是按字节复制的,对于指针型成员变量只复制指针本身,而不复制指针所指向的目标 (1)结构体中不存在指针成员变量时 (2)结构体中存在指针成员变量时 运行该结构体赋值,出现报错: 浅拷贝存在的问题:当出现类的等号赋值时,系统会调用默认的拷贝函数——即浅拷贝, 阅读全文
posted @ 2018-12-27 17:28 两猿社 阅读(12107) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 15 下一页