graybull's Blog
C++跨平台开发 -- 影响跨平台的因素有哪些
跨平台是在应用程序开发当中时常遇到而又内涵丰富的话题。有幸拜读Syd Logan的《Cross-Platform Development in C++》,这里将随手写写读书心得和总结。
子话题 -- 影响跨平台的因素有哪些
- 语言 -language
- 编译器 - compiler
- 二进制数据 - binary data
- 标准库 - standard library
- 操作系统接口 - operation system interface
- 用户接口 - user interface
- 生成系统 - build system
- 配置管理 - configuration management
跨平台C++单元测试框架GTest -- Linux下试用
GTest是Google开发的跨平台而且开源的C++单元测试框架,很好很强大。首先奉上下载地址:https://code.google.com/p/googletest/ 。关于GTest在Windows下使用,CoderZh给出了十分详尽的使用指南:http://www.cnblogs.com/coderzh/archive/2009/04/06/1426755.html 。
这里,是我在Linux下初尝GTest 1.6.0。
- 生成gtest库
- 编写简单功能函数
- 编写单元测试代码
- 编译与运行测试
Windows与Linux代码移植 -- dos2unix与unix2dos
- dos2unix和unix2dos
- 安装dos2unix和unix2dos
- 某些代码运行错误例子
dos2unix和unix2dos
Windows和Linux下文本文件的行结束标志不同。windows中以“\r\n”表示回车换行,而Linux中以“\n”表示回车换行。
dos2unix将“\r\n”转换成“\n”。
unix2dos将“\n”转换成“\r\n”。
使用方法:
dos2unix <filename>
Linux下C++的通用Makefile与解析
本文给出万能Makefile的具体实现,以及对其中的关键点进行解析。所谓C++万能Makefile,即可编译链接所有的C++程序,而只需作很少的修改。
号称万能Makefile,一统江湖。我对原版的Makefile做了些修改。首先揭开它的庐山真面目: