随笔分类 - C++ Compiler2
摘要:背景 Visual C ++,GNU编译器集合(GCC)和Clang /低级虚拟机(LLVM)是业界三种主流的C / C ++编译器。Visual C ++提供了图形用户界面(GUI),易于调试,但不适用于Linux平台。因此,本文主要比较GCC与Clang / LLVM。 GCC是GNU开发的一种
阅读全文
摘要:摘自《C++编程网》,详细介绍请参考http://www.cpp-prog.com/2009/0520/118.html
阅读全文
摘要:使用过开源C/C++项目的同学们都知道,标准的编译过程已经变成了简单的三部曲:configure/make/make install, 使用起来很方便,不像平时自己写代码,要手写一堆复杂的Makefile,而且换个编译环境,Makefile还需要修改(Eclipse也是这样)。 这么好的东东当然要拿
阅读全文
摘要:产生的原因:为了加快boost的编译,使用的预编译头。而且加的boost的头文件比较多,导致pch文件超过了默认值。解决的办法:1. 找到 工程->属性->c/c++->命令行->其他选项2. 输入/Zm100,其中后面的数字可以更大定义:/Zm(指定预编译头的内存分配限额):确定编译器分配的用于构
阅读全文
摘要:简述 在VS编写控制台程序的时候,包括使用其他IDE(Visual C++)编写C/C++程序,经常会看到程序的执行结果一闪而过,要解决这个问题,可以在代码的最后加上system(“pause”)、getchar()、cin.get()。 简述 推荐方法 替代方法 简述 推荐方法 替代方法 简述 推
阅读全文
摘要:C/C++编译器的一些易混淆概念,总结一下。关于什么是Unix-like操作系统,常见操作系统间差异,什么是操作系统接口等等,请参考《操作系统宝鉴》。 C/C++编译器有哪些? 首先是如雷贯耳的这几位仁兄,MSVC、GCC、Cygwin、MingW(Cygwin和MingW的英文发音),另外还有些小
阅读全文
摘要:我们有很多编程语言来进行 web 开发,比如 Java,.Net,PHP,Ruby,Perl,Python 等等。今天我们主要讨论的是两大古老而又流行的语言: C 和 C++ ,它们有着许多卓越的特性,更高效的功能和支持工具。现在这两种语言依然那么活跃,因为它们的 rubout 函数集提供了巨大的安
阅读全文
摘要:https://ftp.gnu.org/gnu/gcc/
阅读全文
摘要:原文地址:http://www.yuanma.org/data/2009/0506/article_3647.htm 编译的概念:编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成
阅读全文
摘要:在上篇文章《inline的另一用处》中,提到函数实现在类定义中与类定义外的区别。 现在先看个实验: a.cpp: [cpp] view plain copy #ifndef TEST_H #define TEST_H class A{ public: int fun(int x){ return (
阅读全文
摘要:首先做个试验: test.c: int a;int b=34;int add(int,int);int main(){int c;int d=26;c=add(b,d);return 0;} add.c: int m;int n=65;int add(int x,int y){int j;int k
阅读全文
摘要:编程语言是怎么实现类型转换的,而计算机底层又是怎样处理各种类型数据的呢,好吧,源码说明一切。 code.c [cpp] view plain copy int test() { unsigned char a=129; char b=130; char c=a; int h=a; char d=-2
阅读全文
摘要:我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。本文主要通过举例来说明在Linux中如何创建
阅读全文
摘要:C++,一个众所周知的 C 语言的扩展,是一个优秀的、强大的、通用编程语言,它能够提供现代化的、通用的编程功能,可以用于开发包括视频游戏、搜索引擎、其他计算机软件乃至操作系统等在内的各种大型应用。 C++,提供高度可靠性的同时还能够允许操作底层内存来满足更高级的编程要求。 虽然已经有了一些供程序员用
阅读全文
摘要:经常有人问如何快速的定位和解决问题,很多时候答案就是借助工具, 记录个人Windows开发中个人常用的一些辅助工具。 (1) Spy++ 相信windows开发中应该没人不知道这个工具, 我们常用这个工具查看窗口层次,跟踪窗口消息。 (2) WinSpy 一个窗口相关的小工具,非常有用,可以帮我们快
阅读全文
摘要:总结一些常用的方法,思考如何分析一个程序的时间消耗。 1. Trace Log 这个是大家最常用,也是最简单和有效地方法。通常是在函数的开始和结束的位置加入Log, 最后通过Log记录时间统计函数的时间消耗。 有时嫌2次log太麻烦,我们可以通过RAII进行封装: class CTimeCostDe
阅读全文
摘要:市面上的C++代码覆盖率工具大都收费,Coverage Validator也不例外。Coverage Validator应该少有人听过,我也是在stackoverflow里听别人介绍的。所以下载了试用一下。有兴趣的朋友可以去https://www.softwareverify.com/cpp/cov
阅读全文
摘要:越来越多公司采用敏捷开发,单元和回归测试越来越重要,GTest作为最佳C++单元测试工具越来越多的被使用。转自 http://www.cnblogs.com/coderzh/archive/2009/04/06/1426755.html前段时间学习和了解了下Google的开源C++单元测试框架Goo
阅读全文
摘要:在C++编程中, 我们常打交道的无非是编辑器和编译器, 对编辑器起来说,我们常遇到就是乱码问题, 比如中文注释显示或是保存不了等, 解决办法就是把你的文件保存成Unicode(UTF8)。 对于编译器来说, 编码方式取决于它对C++标准的支持程度, 比如C++ 11以前,字符串我们只能指定成2种:一
阅读全文