C++学习道路
草戍无心
这个作者很懒,什么都没留下…
展开
-
C++primer-1
1>内联函数和普通函数的区别: 没有栈的开辟 正在编译阶段替换(更安全的宏) 在头文件中定义; debug下内联和普通函数一样 不可用于可变参和递归函数2>函数重载的前提: A.函数名相同 参数列表不同 不能仅仅根据返回值判断重载; B.函数重载必须在同一作用域 C.const修饰的指针/引用可以构成重载3>多态: A.静多态:编译时多态-> 静态绑定 <函数重载 / 模板>原创 2017-06-15 22:56:40 · 226 阅读 · 0 评论 -
C++相关问题总结
构成动态多态的条件: 多态存在的三个条件: 1.必须存在继承关系; 2.继承关系中必须有同名的虚函数,并且它们是覆盖关系(重载不行)。 3.存在基类的指针,通过该指针调用虚函数。 注意:派生类中的虚函数必须覆盖(不是重载)基类中的虚函数,才能通过基类指针访问。 隐藏、覆盖: 覆盖指的是子类覆盖父类函数(被覆盖),特征是: 1.分别位于子类和父类中 ...原创 2018-06-17 14:40:57 · 223 阅读 · 0 评论 -
堆栈管理
堆栈区别 (1). 管理方式不同 (2). 空间大小不同 (3). 能否产生碎片 (4). 生长方向不同 (5). 分配效率不同(1). 管理方式不同:栈是由编译器自动申请释放内存,栈需要程序员手动管理,容易产生内存泄漏(2). 空间大小不同:栈的大小很小,只有1M,堆有2G,都可以适当扩大(3). 能否产生碎片:栈不会产生碎片,堆上申请的容易产生碎...原创 2018-06-09 17:12:53 · 854 阅读 · 0 评论 -
常用设计模式
单例模式 单例大约有两种实现方法:懒汉与饿汉 @懒汉:在第一次用到类实例的时候才会去实例化 @饿汉:单例类定义的时候就进行实例化 特点与选择: 由于要进行线程同步,所以在访问量比较大,或者可能访问的线程比较多 时,采用饿汉实现,可以实现更好的性能。这是以空间换时间 在访问量较小时,采用懒汉实现。这是以时间换空间...原创 2018-06-08 20:34:18 · 148 阅读 · 0 评论 -
负载均衡算法
分布式算法-一致性哈希: 一个分布式系统,需要将数据存储到具体的节点上,如果用普通哈希取模进行,如果增加服务器或者服务器宕机,同一个KEY经过哈希后再对总数取模结果就和原来不同,会导致数据丢失。 所以引入一致性哈希: 先用hash函数映射到一个圆环上: 需要服务器时,先根据hash算法算出KEY的hash值,对应到这个环中的位置:如上图中的K1,顺时针找到服务...原创 2018-06-14 10:31:37 · 173 阅读 · 0 评论 -
C++11新特性
1,关键字:>>>>>>>>>auto在C98中已经存在,只是作用不大且多余<<<<<<<<<<<<C11中auto可以在声明变量的时候根据变量初始值的类型自动为此变量选择匹配的类型: int a = 1原创 2018-06-13 08:33:10 · 233 阅读 · 0 评论 -
Effective C++
1、不想使用编译器自动生成的函数,就该明确拒绝 若没有自定义的构造,拷贝构造,operator=,编译器会自动产生一份默认的,默认产生的权限都是public的,如果程序中不想用到拷贝等操作,可以自定义一份private权限的。2、多态基类的析构函数声明为virtual 1.具有多态性质的base class,应该声明一个virtual析构函数,如果class中带有任何virt...原创 2018-05-15 16:55:52 · 158 阅读 · 0 评论 -
C++primer -2
类和对象一,对象的大小不考虑方法和静态变量 cpp中 struct-》public class 对象产生-》1.开辟内存(产生this指针)2.调用构造函数 对象析构-》1.处理对象占用的外部资源 2.释放对象内存成员方法中参数列表中隐藏有一个对象的地址(C *const this) 类体内定义的方法被处理成内联方法(编译时检查)1>拷贝构造:有指针时默认拷贝构造函数会发生浅拷贝(析构原创 2017-07-03 23:30:51 · 180 阅读 · 0 评论 -
C++继承
1) public继承方式基类中所有public成员在派生类中为public属性;基类中所有protected成员在派生类中为protected属性;基类中所有private成员在派生类中不可访问2) protected继承方式基类中的所有public成员在派生类中为protected属性;基类中的所有protected成员在派生类中为protected属性;基类中的所有priva...原创 2018-06-17 15:03:54 · 122 阅读 · 0 评论