C++
当你需要写性能良好的代码时,C++仍是不二选择
如果你想访问硬件、如果你想对硬件进行控制,C++仍是首选。
所有的游戏引擎都是用C++编写的,因为C++可以直接控制硬件。
原理:
C++代码-->编译器编译comple-->目标平台的机器码-->放入cpu,cpu就会执行这些指令。
目标平台的机器码是你目标设备上的cpu实际执行的指令。所以用C++可以控制cpu执行的每一条指令。
你只要找到你的目标平台输出机器码的编译器,C++就可以运行在你的目标平台上。比如,x64编译器输出x64机器代码,从而可以在64位的cpu上运行。
所以,你只要有一个目标平台的编译器,C++就可以被编译成该平台上运行的本地代码
一、环境搭建
工具:
电脑+工具
工具取决于你电脑上的操作系统:windows、mac、linux
你可以在文本编辑器:记事本上写C++代码:
在txt文件中写C++代码-->编译器-->可执行二进制文件-->运行
但是,用记事本写代码实在是太费劲了,你还是需要一个开发环境,也就是集成开发环境IDE,也就是一个可以帮你编写和调试代码的软件工具。所以如果你是在windows平台上,用Microsoft VisualStudio就可以,而且这个IDE还有很多插件,可以让你在PC端、移动终端、游戏机等终端。
Microsoft VisualStudio安装包下载地址:Visual Studio: 面向软件开发人员和 Teams 的 IDE 和代码编辑器
下载一个社区版的就可以,免费。
二、写C++程序的基本流程
第一步:创建项目及文件:
第二步:先写源文件Main.cpp:
点击上面的绿色空心三角,是编译并执行的意思,就出现下面的output及Debug Console,这一步我们只是写源文件代码,所以你可以先不点击这个三角。
第三步:把源文件myfirst.cpp编译成可执行的二进制文件
(1)编译器先处理预处理语句:#include 。编译器会将iostream文件内容全部拷贝到myfirst.cpp代码中。因为只有包含了iostream内容的代码才可以使用cout、cin等这些函数。说明:iostream是标准输入输出流,就是用键盘和屏幕输入输出数据。
(2)编译:编译器将所有代码(包括头文件)转化为机器代码。
a、如何转化?下面是设置的转化规则:
项目中的每一个.cpp文件都会被编译(其中包括被拷贝进来的头文件代码,不是头文件本身啊!),每个.cpp文件先都被编译成了一个object file(目标文件),如果你用的是vs,那生成的目标文件就是.obj文件。然后再把这些独立的.obj文件合并成一个可执行文件,就是.exe文件,而这个过程就要用到上图的链接Linker,就是把所有的.obj文件link到一起,形成一个.exe文件。不过这个过程也是非常复杂的,以后单独把这个过程拿出来讲。
b、编译操作:ctrl+F7快捷键。使用ctrl+F7快捷键就可以使用上图的编译规则编译了。除了ctrl+F7还可以通过下面两种方式进行编译:
c、编译过程:
说明:上面的编译过程是仅仅编译了一个Main.cpp一个文件的过程,所以这个过程是不会进行链接Link的。
d、编译结果:编译器编译后生成了什么?
e、多个C++文件同时进行编译的情况:
以上就是编译的基本流程,其实也就是个大概的整体过程,下一篇博文将深度拆解编译流程。