![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
bblueske
这个作者很懒,什么都没留下…
展开
-
c++重载箭头操作符
c++重载箭头操作符2011-09-26 15:56箭头操作符(->)的通常用法是,使用一个类对象的指针来调用该指针所指对象的成员。左操作数为对象指针,右操作数为该对象的成员。定义重载箭头操作符之后看起来就有点特别,可以用类对象的指针来调用,也可以转载 2011-09-26 22:52:12 · 559 阅读 · 1 评论 -
c++指针访问小结
c++指针在类族中如何访问类成员。问题描述:指针进行转换时,指针如何访问类普通成员和虚函数成员。class A;class B: class A;B *pb;A *pa = (A*)pb;pa->f();指针访问首先根据指针的声明类型确定访问的范围,比原创 2011-09-30 21:41:58 · 333 阅读 · 0 评论 -
关于函数指针的一点总结
以前在使用函数指针的时候,没有弄明白函数名和函数指针类型的区别,今天做了个小测试,总结一下测试结果。int32_t mytest(int32_t id){printf("my test\n");return 0;}typedef int32_t (*P_FUN)(int32_t);P_FUN t /*0x00499e0c*/ = mytest /*0x00519原创 2012-10-31 11:50:07 · 266 阅读 · 0 评论 -
使用vld(visual leak detector)进行内存泄露调试
最近写了个程序,需要进行内存泄露调试,用到了vld工具,记一下方法防止以后要用到后忘记。1.安装vld,下载http://vld.codeplex.com/好安装2.添加vs2008环境,tool->options->project and solution->vc++ directories,在show directories for下拉框里面,添加安装目录下的include 目录和原创 2012-10-23 14:52:04 · 631 阅读 · 0 评论 -
C++调用的LUA脚本中加载其他库的问题
最近使用lua扩展c++程序,需要在调用的脚本中require另一个库,static const luaL_reg lualibs[] ={{"package", luaopen_package},LUA_EXTRALIBS{NULL, NULL}}; const luaL_reg* lib = lualibs;for (; lib->func; lib++)原创 2012-11-11 23:53:53 · 579 阅读 · 0 评论 -
__attribute__ ((__packed__))编译选项
最近在不同的环境编译epoll程序的时候总是有问题,看了下系统epoll.h,原来是两个不同的版本。其中有些宏定义老版的没有,而在老版中定义struct epoll_event{ uint32_t events; /* Epoll events */ epoll_data_t data; /* User data variable */} __attribute__ (原创 2013-01-02 10:59:08 · 672 阅读 · 0 评论 -
C++ STL中判断list为空,size()==0和empty()有什么区别
关于两个的区别,首先size()==0为bool表达式,empty()为函数调用,这一点很明显。查看源代码, bool empty() const { return _M_node->_M_next == _M_node; } size_type size() const { size_type __result = 0; distance(begin(), end(),原创 2013-03-05 16:54:24 · 3005 阅读 · 0 评论 -
关于struct和class的区别
struct和class的区别在C++中的区别比较小,两者都可以用来定义类,进行方法和运算符重载,他们的区别在于默认的访问级别,struct在没有声明访问修饰符的时候默认是public,而class为private代码:struct S{ S() : m_a(0){} int m_a;};class C{ C() : m_a(0){} int m原创 2013-03-27 14:53:40 · 476 阅读 · 0 评论