shared_ptr线程安全性全面分析
正如boost文档所宣称的,boost为shared_ptr提供了与内置类型同级别的线程安全性。这包括:1. 同一个shared_ptr对象可以被多线程同时读取。2. 不同的shared_ptr对象可以被多线程同时修改成
收藏 0赞 0分享
尾递归详细总结分析
关于递归操作,相信大家都已经不陌生。简单地说,一个函数直接或间接地调用自身,是为直接或间接递归
收藏 0赞 0分享
Assert(断言实现机制深入剖析)
言前后最好空一格[编程风格的问题,按你自已的喜好,适合自已就最好]。断言只是用来检查程序的逻辑正确性,不能代替条件替换。断言比printf语句这种形式的打印好使
收藏 0赞 0分享
C++拷贝构造函数(深拷贝与浅拷贝)详解
深拷贝和浅拷贝可以简单理解为:如果一个类拥有资源,当这个类的对象发生复制过程的时候,资源重新分配,这个过程就是深拷贝,反之,没有重新分配资源,就是浅拷贝
收藏 0赞 0分享
利用C语言实现HashTable
根据KEY从hashtable中获取接点,步骤是先根据KEY计算hash值,然后从hashtable中找到指定的接点或者接点链表
收藏 0赞 0分享
简单说说STL的内存管理
<STL 源码剖析>将其描述为空间配置器,理由是allocator可以将其它存储介质(例如硬盘)做为stl 容器的存储空间。由于内存是allocator管理的主要部分,因此,本文以STL内存管理为出发点介绍allocator
收藏 0赞 0分享
浅析C/C++变量在内存中的分布
变量在内存地址的分布为:堆-栈-代码区-全局静态-常量数据。同一区域的各变量按声明的顺序在内存的中依次由低到高分配空间(只有未赋值的全局变量是个例外)
收藏 0赞 0分享
C/C++可变参数的使用
可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
收藏 0赞 0分享
线程池的原理与实现详解
下面利用C语言来实现一个简单的线程池,为了使得这个线程池库使用起来更加方便,特在C实现中加入了一些OO的思想,与Objective-C不同,它仅仅是使用了struct来模拟了c++中的类,其实这种方式在linux内核中大量可见
收藏 0赞 0分享
浅析VC++中的头文件包含问题
类中尽量采用指针或引用方式调用其它类,这样就可以只声明class xxx了。并且这也符合资源最优利用,更利于使用多态
收藏 0赞 0分享
VC++开发中完美解决头文件相互包含问题的方法解析
本文中,为了叙述方便,把class AClass;语句成为类AClass的声明,把class AClass开始的对AClass的类成员变量、成员函数原型等的说明称为类的定义,而把在CPP中的部分称为类的定义
收藏 0赞 0分享