- 博客(6)
- 资源 (3)
- 收藏
- 关注
原创 C/C++内存管理之内存池
C++内存管理一直是我比较困惑的问题。俗话说初生牛犊不怕虎,做点啥都new一个,然后delete一个。根本不知道底层会有怎么样的运行机制,慢慢地学习才知道以前学习中有一些东西是不可能在工业中应用的。所以想开辟一个坑为C++的内存管理机制。也希望通过这篇能够对C++内存管理机制有一个更加深刻全新的认识吧。New、delete篇在C++中已经将new 和 delete 认定为运算符。我们不用关心是如何进
2017-03-28 21:38:57
2809
原创 两个指针之间的运算
只有指向同一数组的俩个指针变量之间才可以进行计算。否则是没有意义的。两指针变量相减两指针变量相减所得之差是俩个指针所指数组之间相差的元素个数。实际上是俩个指针值(地址)相减之差再除以该数组元素的长度(字节数) 注意:因为俩个指针相加没有任何意义,所以别乱搞。
2017-03-28 21:31:24
7143
原创 关于在函数前加const 和成员函数后加const 的记录
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2017-03-24 19:56:38
1400
原创 继承:继承接口和实现
在继承体系中有的时候希望只继承一个接口,例如在图形体系中继承draw()函数,因为每个图形都有不同的画法,所以只能继承一个接口,具体怎么画要到派生类中具体实现。所以要定义如下:class Shape{public: virtual void draw() = 0;};class Rectangle : public Shape{public:void dra
2017-03-24 19:31:37
695
原创 继承:避免遮掩继承而来的名称
以上代码中会发生错误的主要原因就是因为派生类定义的f1()遮掩了基类的函数名。导致在派生类调用基类函数失败。这个问题我们必须重视,因为在《Effective C++》中提到公共继承的理念是“is”。如果派生类不能够调用基类的方法时,颠覆了这个理念,所以我们必须解决这个问题。如何解决我学到了一个以前从来没有用到的代码。就是在派生类中加入“using Base::f1;”这行代码。主要的意思就是告
2017-03-23 18:06:39
380
原创 C++内存对齐
C++中关于成员变量定义的位置有一些小的细节值得注意。对于写出高质量的代码有很大的帮助。主要只是点如下: 首先我们先回顾一些C++中各个变量在32位机子上所占内存的大小。变量字节数变量字节数char1Pointer(指针)4bool1
2017-03-20 22:12:00
305
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人