C++0x/C++11新特性总结

2014.06.04/2014.06.20发布于笔记暂无评论#c++#c++11#总结#未完成

C++11(或C++0x)是目前的C++语言标准,新的标准将取代之前的C++03标准,并在其基础上扩展核心语言和标准库,本文总结C++0x/C++11的部分新特性,如有错漏之处欢迎反馈指正。

本文中出现的代码均在如下环境编译通过,其中多数取自网络并稍加修改,代码放在这里

  • OS: Ubuntu 14.04 x86-64
  • 编译器: clang-3.5
  • 标准库实现: libc++

未完成,列提纲占坑先

关于C++的吐槽

继续阅读...

googletest和googlemock使用总结

2014.02.26发布于笔记暂无评论#c++#google#单元测试#总结#未完成

googletest和googlemock使用总结,尚待补充。

googletest和googlemock是c++里很好用的单元测试框架。另外,若无特别说明,以下内容均基于googletest 1.7和googlemock 1.7。

googletest

简单的例子

Makefile

继续阅读...

C++问题总结

2014.01.07/2014.01.11发布于笔记暂无评论#c++#总结#未完成

总结日常编程中遇到的C++疑难问题,备忘。以下总结多基于C++03标准。

VLA

c99标准支持VLA(variable length arrays),而在c11标准里VLA是一个可选的特性,具体实现需看编译器。简单的VLA例子如下:

int arrlen() { return 10; }
char arr[arrlen()];

在上面的例子里,arr就是一个VLA。

继续阅读...

CMake使用总结

2013.11.12/2015.10.02发布于笔记暂无评论#c++#cmake#note#总结

总结CMake的常用命令,并介绍有用的CMake资源。

CMake意为cross-platform make,可用于管理c/c++工程。CMake解析配置文件CMakeLists.txt生成Makefile,相比直接用Makefile管理工程,CMake更灵活和简单。

简单的例子

一个完整的Demo可参考这里

假设当前目录的结构为

继续阅读...

C/C++资源收集

2013.08.25/2014.05.15发布于笔记暂无评论#c++#resource

收集有用的C/C++资源。

C资源列表

C类库

sglib

继续阅读...

GCC相关的环境变量

2013.08.25/2015.05.20发布于笔记暂无评论#c++#config#gcc

介绍GCC在编译阶段和程序运行阶段用到的环境变量。

GCC编译时用到的环境变量

GCC编译时用到的变量。

C_INCLUDE_PATH

GCC编译时查找头文件的目录列表。比如:

继续阅读...

使用C++进行Mysql开发

2013.08.25发布于笔记暂无评论#c++#dev#mysql#note

介绍用C++语言进行Mysql开发的东东。

准备工作

开始编码之前,需要准备的事项。

依赖的软件

需要安装mysql-dev库。

继续阅读...