码迷,mamicode.com
首页 >  
搜索关键字:ptr    ( 2121个结果
C中常量字符串使用以及g++的一个bug
const char*用于定义一个指向常量字符串的指针,通常形式为: const char* ptr = "hello"; 但可能很多粗心的朋友们没有注意到下面一种定义: const char* ptr2 = "hello"; ptr和ptr2指向的是同一片内存,即定义const char* pt....
分类:其他好文   时间:2014-11-03 16:06:28    阅读次数:254
gcc提供的原子操作
gcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。其声明如下:// 返回运算之前的值,*ptr指向参加运算的值,value是第二个操作的值type__sync_fetch_and_add(type*ptr,typevalue,...)type__s...
分类:其他好文   时间:2014-11-02 19:31:16    阅读次数:145
boost准模板库scoped_ptr指针的使用以及auto_ptr智能指针的对照
首先我们看看scoped_ptr的基本使用,包括了swap(),get(),reset()的使用,重要的提醒是作用域结束的时候会自己主动析构,无需手动的释放资源:#include#includeusing namespace std;using namespace boost;struct p...
分类:其他好文   时间:2014-11-02 12:14:47    阅读次数:200
c++ 11 国标标准方面的异常处理与微软在Visual Studio 2012的异常处理的区别
这段代码:__try{}__except(GetErrorCode()){} 可以捕获空指针,但是包围在其中的代码不能有自带析构函数的对象。c++ 11 标准里面的auto_ptr关键字,有此关键字的指针发生的异常能被try{}catch(...){} 捕获,但是VC不支持auto_...
分类:编程语言   时间:2014-11-01 00:55:19    阅读次数:211
【C++智能指针 auto_ptr】
auto_ptr的知识点,留下自己看。...
分类:编程语言   时间:2014-10-31 10:13:46    阅读次数:346
muduo源码分析--Reactor模式的在muduo中的使用(二)
一. TcpServer类: 管理所有的TCP客户连接,TcpServer供用户直接使用,生命期由用户直接控制。用户只需设置好相应的回调函数(如消息处理messageCallback)然后TcpServer::start()即可。 主要数据成员: boost::scoped_ptr acceptor_; 用来接受连接 std::map connections_; 用来存储所有连...
分类:其他好文   时间:2014-10-30 20:58:21    阅读次数:185
模板编程中的技巧
关键字 typename在C++标准化过程中,引入关键字typename是为了说明;模板内部的标识符可以是一个类型。譬如下面的例子:templateclass MyClass{ typename T::SubType *ptr; ...}; 上面的程序中,第2个typename被用来说...
分类:其他好文   时间:2014-10-29 19:20:40    阅读次数:187
Shared_from_this 几个值得注意的地方
shared_from_this()是enable_shared_from_this的成员 函数,返回shared_ptr。首先需要注意的是,这个函数仅在shared_ptr的构造函数被调用之后才能使 用。原因是enable_shared_from_this::weak_ptr并不在构造函数中设置,...
分类:其他好文   时间:2014-10-28 23:57:18    阅读次数:276
container_of宏剖析
container_of宏剖析//该宏位于include/linux/kernel.h1.定义格式/** * container_of - cast a member of a structure out to the containing structure * * @ptr: th...
分类:其他好文   时间:2014-10-28 19:33:33    阅读次数:255
C/C++拾遗(一):关于数组的指针和数组元素首地址的一道经典题
代码如下:#include int main(void) { int a[5] = {1, 2, 3, 4, 5}; int *ptr = (int *)(&a+1); int *p1 = a; int *p2 = &a[0]; int *p3 = (int *)(&a); if(p1 == p2){ printf("p1 == p2\n"); }else{ pr...
分类:编程语言   时间:2014-10-28 00:54:18    阅读次数:165
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!