c++编程
文章平均质量分 80
Capr1corn
命数如织,当为磐石
展开
-
深度探索c++对象模型第三章笔记下
3.4 “继承”与Data Member在c++继承模型中,一个derived class object所表现出来的东西,是其自己的members加上其base class(es) members的总和。至于derived class members和base class memers的排列次序并未在c++ stanard 中强制指定;理论上是编译器可以自由安排的。在大部分编译器中,base c...原创 2018-12-13 15:35:50 · 2208 阅读 · 0 评论 -
转载:C++ 中 new 操作符内幕:new operator、operator new、placement new
转载自:https://www.cnblogs.com/slgkaifa/p/6887887.html一、new 操作符(new operator)人们有时好像喜欢有益使C++语言的术语难以理解。比方说new操作符(new operator)和operator new的差别。 当你写这种代码:string *ps = new string("Memory Manageme...转载 2019-04-04 16:20:31 · 195 阅读 · 0 评论 -
C++后台开发校招面试常见问题
C和C++语言基础参考书籍:《C++ primer》,《effective C++》,《STL源码解析》,《深度搜索C++对象模型》文章转载自:https://blog.csdn.net/shanghairuoxiao/article/details/72876248extern关键字作用extern声明变量在在外部定义?extern修饰...转载 2019-03-26 11:09:36 · 1063 阅读 · 0 评论 -
参考别人的面试总结:linux C/C++服务器后台开发面试题总结
参考别人的面试总结:linux C/C++服务器后台开发面试题总结参考博客:http://www.cnblogs.com/nancymake/p/6516933.html基础语言知识方面:1、使用struct关键字和class关键字定义类以及在类的继承方面有啥区别?(1)定义类的差别:C语言中的struct 关键字也可以实现类,用class 关键字和struct 关键字定义类的唯一差...转载 2019-03-26 11:08:08 · 631 阅读 · 0 评论 -
转载 :c++面试基础知识点一
c++编程基础知识点:变量声明和定义区别?声明仅仅是把变量的声明的位置及类型提供给编译器,并不分配内存空间;定义要在定义的地方为其分配存储空间。相同变量可以再多处声明(外部变量extern),但只能在一处定义。“零值比较”?bool类型:if(flag)int类型:if(flag == 0)指针类型:if(flag == null)float类型:if((flag >= -0...转载 2019-03-18 21:04:21 · 338 阅读 · 0 评论 -
C++内联函数
文章转载于:https://www.cnblogs.com/QG-whz/p/4641479.html#_label0正文 在C语言中,我们使用宏定义函数这种借助编译器的优化技术来减少程序的执行时间,那么在C++中有没有相同的技术或者更好的实现方法呢?答案是有的,那就是内联函数。内联函数作为编译器优化手段的一种技术,在降低运行时间上非常有用。我们将从:什...转载 2019-03-20 10:47:46 · 166 阅读 · 0 评论 -
转载:C++中new和delete的实现原理
原文地址:https://blog.csdn.net/passion_wu128/article/details/38966581new和delete最终调用malloc和free,关于malloc和free实现原理参见这篇文章:http://blog.csdn.net/passion_wu128/article/details/38964045newnew操作针对数据类型的处理,分为...转载 2019-03-15 11:36:42 · 121 阅读 · 0 评论 -
[C++并发编程实战] 阅读笔记第二章:线程管理
第二章、线程管理需要学习的内容:1、启动新线程2、等待线程与分离线程3、 线程唯一标识符2.1 线程管理基础原创 2019-01-31 11:46:24 · 237 阅读 · 0 评论 -
深度探索c++对象模型第六章笔记
执行期语意学(Runtime Semantics)有下面的代码if(yy==xx.getValue())...........其中xx 和yy定义为:X xx;Y yy;class Y定义为:class Y{public: Y(); ~Y(); bool operator==(const Y&) const; //...........};Class ...原创 2018-12-24 16:29:48 · 357 阅读 · 0 评论 -
深度探索c++对象模型第三章笔记上
Data语意学 The Semantics of Data前言下面四个类,它们sizeof的结果是多少呢?原创 2018-12-11 21:39:04 · 154 阅读 · 0 评论 -
深度探索c++对象模型第二章读书笔记
2.2 Copy Constructor 的建构操作有三种情况,会以一个object的内容作为另一个class object的初值。1、对一个object做明确的初始化操作时;2、当object被当做参数交给某个函数时;3、当函数传回一个class object时。如果程序员明确定义了一个copy construct函数,那么在大多数情况下,当一个class object以另一个实体...原创 2018-12-11 16:05:16 · 180 阅读 · 0 评论 -
深度探索c++对象模型第四章笔记下
4.4 指向Member Function的指针在之前的章节中,已经知道取一个nonstatic data memeber的地址,得到的结果就是该member在class布局中的bytes位置(再加上1),我们知道的是,它是一个不完整的值,它需要被绑定于某个class object的地址上,才能被存取。取一个nonstatic member function的地址,如果该函数是nonvirtu...原创 2018-12-17 14:18:42 · 162 阅读 · 0 评论 -
C++编程错误 : undefined reference to " vtable for *** "
这个错误常见于一系列有继承关系的class而没有给base class的 virtual function加上函数实现,也就是基类的虚函数只声明没有定义。解决办法:1、给基类的virtual函数加上本来就应该有的function body,即写出虚函数的定义;2、基类中使用纯虚函数。...原创 2018-12-17 11:24:55 · 3986 阅读 · 0 评论 -
深度探索c++对象模型第四章笔记上
Function 语意学 The Semantics of Functionc++支持三种类型的成员函数(member functions):static、nonstatic和virtual,每一种类型被调用的方式都不相同。4.1 Member的各种调用方式Nonstatic Member Function(非静态成员函数)假设有如下程序:Point3d obj;Point3d *pt...原创 2018-12-17 10:17:24 · 232 阅读 · 0 评论 -
深度探索c++对象模型第五章笔记下
5.3 对象复制语意学如果我们设计一个class,并以一个class object指定给另一个class object时,我们有三个选择:1、什么都不做,因此得以实施默认行为;2、提供一个explicit copy assignment operator;3、明确地拒绝把一个class object指定给另一个class object;如果选择第3点,不准将一个class objec...原创 2018-12-21 18:23:06 · 190 阅读 · 0 评论 -
深度探索c++对象模型第五章笔记上
构造、解构、拷贝语意学(Semantics of Constuction,Destruction,and Copy)假设有以下的代码:class Abstract_base{public: virtual ~Abstract_base()=0;//pure virtual function virtual void interface() const=0; virtual const...原创 2018-12-21 16:51:26 · 232 阅读 · 0 评论 -
C++中的new、operator new与placement new
C++中的new、operator new与placement new 作者:阿凡卢出处:http://www.cnblogs.com/luxiaoxun/C++中的new/delete与operator new/operator deletenew operator/delete operator就是new和delete操作符,而operator new/operator ...转载 2019-04-15 16:06:32 · 263 阅读 · 0 评论