c++
echoes_of_rainbow
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
c++类型重载 : 避免对指针和数字重载
<br />effctive c++ 条款25:避免对指针和数字重载<br /> <br />因为重载后,指针会被解析为整型,与数字的重载混淆。<br />比如以自定义类型的指针为key建立map,即使你定义了该类的对<的重载,但c++会把对指针的比较以为是对整型的比较,不会调用自定的类型比较。只能传递自定义的比较函数。原创 2011-03-03 11:32:00 · 564 阅读 · 0 评论 -
gcc 编译优化选项
-O0:这个等级(字母“O”后面跟个零)关闭所有优化选项,也是CFLAGS或CXXFLAGS中没有设置-O等级时的默认等级。这样就不会优化代码,这通常不是我们想要的。 -O1:这是最基本的优化等级。编译器会在不花费太多编译时间的同时试图生成更快更小的代码。这些优化是非常基础的,但一般这些任务肯定能顺利完成。 -O2:-O1的进阶。这是推荐的优化等级,除非你有特殊的需求。-O2会比-O1启用转载 2012-06-04 16:35:38 · 498 阅读 · 0 评论 -
c++中利用宏来声明和定义变量
假设我们要定义一个配置类,类中包含了很多的配置成员,有一种通过宏的方法可以让我们方便的维护繁多的成员在一个类中,定义一个变量需要类型,构造函数中给出的初始值。我们需要能够像脚本语言一样进行配置变量:tconfig.hOPTION(m_data,OPT_INT,-1)OPTION(m_value,OPT_DOUBLE,1)OPTION(m_change,OPT_FLOAT原创 2012-05-08 19:09:51 · 5966 阅读 · 0 评论 -
c++ 函数名字 重载
作者:吴秦出处:http://www.cnblogs.com/skynet/写在前面:函数重载的重要性不言而明,但是你知道C++中函数重载是如何实现的呢(虽然本文谈的是C++中函数重载的实现,但我想其它语言也是类似的)?这个可以分解为下面两个问题1转载 2011-09-28 23:21:45 · 910 阅读 · 0 评论 -
c程序内存布局
当一个程序被编译连接为可执行程序时,对于c/c++语言的程序,其内存布局主要是代码段和数据段。代码段text 存放可以执行的代码,拥有可执行权限,一般是只读的。代码段在执行时一般都需要访问内存数据,即数据段的内容。数据段包括以下部分:1 初始化数据区data:存放已经初始原创 2011-09-28 22:42:38 · 375 阅读 · 0 评论 -
C/C++程序编译的过程
gcc编译c/c++程序为可执行文件的过程实际包括以下几步,假人我们要编译的文件为t.c:1 预编译:由预处理器cpp执行, 可以通过命令cpp -o t.i t.c 进行。 gcc -E t.c -o t.i这一步预处理器把所有include的文件包括递归包含的文件转载 2011-09-27 21:48:18 · 503 阅读 · 0 评论 -
C++虚函数表
考虑最简单的有虚函数的继承关系:class F{public:virtual void func() {printf("F func\n");}};class S : public F{public:virtual void func(原创 2011-09-27 18:08:32 · 395 阅读 · 0 评论 -
inline 与 virtual
函数前面加了inline是向编译器进行建议,将该函数定义为内联函数,编译的时候,在调用该函数的位置进行展开。但只是一种建议,不能强制编译器执行。我们知道虚函数是c++多态的一种方式。在继承层次的虚函数关系下,具体调用哪一个虚函数是运行时决定的。在这种情况下的虚函数加了inli原创 2011-09-27 11:35:38 · 634 阅读 · 0 评论 -
sizeof
sizeof 返回一个对象或者类型名的长度,返回值的类型为size_t,其结果是编译时常量。1 所有的指针大小同等于机器字长2 int 在32位和64位上一般是4字节。long 同等于机器字长。3 sizeof不对表达式进行运算,只取表达式结果原创 2011-09-27 10:47:09 · 340 阅读 · 0 评论 -
gdb调试C++ STL
原文链接:http://blog.youkuaiyun.com/luoleicn/article/details/5968038GDB中print方法并不能直接打印STL容器中保存的变量,其实只要http://www.yolinux.com/TUTORIALS/src/dbinit_stl_views-1.03.txt这个文件保存为~/.gdbinit 就可以使用它提供的方法方便调试容器转载 2012-05-18 16:44:31 · 862 阅读 · 0 评论
分享