关于C++的跨平台性

0 前言

C++ 作为一种编译型语言,我们常常认为他是不能跨平台的。但是实际上c++就是为了跨平台而设计的。

1 大人,时代变了

C/C++就是为了跨平台而设计的,那个时代的跨平台指的是:一次编写,到处编译。

源代码写好了,我放到哪个平台都可以编译出可执行程序。因为早期各个系统都有各自的编译器,所以放到对应系统上再编译,其实也算方便

可惜现在我们常常说的跨平台指的是:一次编写,到处运行

2 为什么不能跨平台

C++编译好的二进制文件不能跨平台,原因很多,比如不同系统上,不同CPU,不同指令集,甚至不同系统上的lib提供的API不同,真的很让人头大啊。。。。

比如网络编程接口,linux的网络编程和windows的网络编程用到的库是不一样的,我大二的那个sb项目,分不清这两个东西,就去网上抄了LINUX的代码,想在windows上运行,但是很显然失败了。不过那时候也不怪我,那时候计网都没学

posted @ 2024-03-28 19:32  wenli7363  阅读(67)  评论(0编辑  收藏  举报