跨平台编程技术(跨Windows/Linux)

1. 何为跨平台?

一份代码,在Windows上可以编译、运行,在Linux上也可以编译和运行,则称此代码是可以跨平台的。

2. 特点

1)同一份代码,无需改动

2)运行结果相同

3. 跨平台代码的要求

1)尽量使用标准函数/类型/语法

    如,ANSI C/STL,是各个平台都支持的函数;

    char/short/int/double/float,这些类型各平台都支持。

2)尽量避免平台相关的类型、函数、语法

    如,有的编译器认为这样是变量i重复定义

    for(int i = 0; i < 2; i++){}

    for(int i = 0; i < 10; i++){}

    如,用fopen/fclose/fread/fwrite来对文件进行操作,不用open/close/read/write来操作文件。

4. 跨平台的封装

以popen/pclose为例,在Linux下,支持popen/pclose ,在Windows下,支持_popen/_pclose,如何做到代码上的统一?

使用如下条件编译,

#ifdef _WIN32

//Windows下的操作

#else

//Linux下的操作

#endif

猜你喜欢

转载自blog.csdn.net/huashuolin001/article/details/88563166
今日推荐