摘要:
环境:Ubuntu10.04+gtest-1.0.0安装google test:1、获取gtest 去gtest官方网站下载:http://code.google.com/p/googletest/,最新版本是gtest-1.6.0,本文以gtest-1.0.0安装为例,下载gtest-1.0.0.tar.gz。2、解压 tar zxvf gtest-1.0.0.tar.gz3、./configure4、make 注意,进行make前,请确认安装了gcc、automake等5、sudo make install 至此,gtest安装结束,输入以下命令测试以下是否安装成功:1 gtes... 阅读全文
摘要:
转自:http://www.cnblogs.com/skynet/archive/2011/03/07/1975479.html为什么需要知道C/C++的内存布局和在哪可以可以找到想要的数据?知道内存布局对调试程序非常有帮助,可以知道程序执行时,到底做了什么,有助于写出干净的代码。本文的主要内容如下:源文件转换为可执行文件可执行程序组成及内存布局数据存储类别一个实例总结源文件转换为可执行文件源文件经过以下几步生成可执行文件:1、预处理(preprocessor):对#include、#define、#ifdef/#endif、#ifndef/#endif等进行处理2、编译(compiler): 阅读全文
摘要:
转自:http://www.cnblogs.com/dobest9014/archive/2011/04/26/2030845.html首先,混合编程不是指在同一个文件里写C与C++。 比如说想在同意文件里同时 弱类型检查,又强类型检查,那真够呛。混合编程包括:1,C++引用C的头文件;2,g++生成的.o与gcc生成的.o相链接。1,在用C语言写的头文件中,经常加上如下 保护宏定义: 1 /* 2 example.h 3 */ 4 #ifndef EXAMPLE_H_ 5 #define EXAMPLE_H_ 6 #ifdef __cplusplus 7 extern "C&quo 阅读全文
摘要:
本文来自:http://www.cnblogs.com/skynet/archive/2010/07/10/1774964.html引言在用C++的项目源码中,经常会不可避免的会看到下面的代码:1 #ifdef __cplusplus2 extern "C" {3 #endif4 5 /*...*/6 7 #ifdef __cplusplus8 }9 #endif它到底有什么用呢,你知道吗?而且这样的问题经常会出现在面试or笔试中。下面我就从以下几个方面来介绍它:1、#ifdef _cplusplus/#endif _cplusplus及发散2、extern "C 阅读全文