热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

写给前端同学的C++入门教程(一):概述和环境搭建

说明:本人是前端er,因为最近对UE4(一个游戏开发引擎)产生了兴趣,而这个引擎源开发游戏时需要用到C++,所以就开始入坑C++了。现将自己学习C++的笔记整理并分享出来,以便一些


说明:本人是前端er,因为最近对 UE4(一个游戏开发引擎)产生了兴趣,而这个引擎源开发游戏时需要用到 C++ ,所以就开始入坑 C++ 了。现将自己学习 C++ 的笔记整理并分享出来,以便一些想入门 C++ 的朋友一起学习,将会以系列教程的的形式来编写,这是第一篇。


C++ 是什么?


我们都知道,目前的高级编程语言主要分成两种,一个是面向过程的比如 C,一个是面向对象的比如 Java。而 C++ 时同时整合了这两种特性的语言,在C语言基础上添加的类代表的面向对象。另外,C++模板还支持支持的泛型编程(后面会介绍)。至于 C++ 发展历史,这里不做介绍,大家可以自行查找。


在 C++ 最初发布的时候,在编译过程分成两段的,先是把 C++ 编译成 C,再把 C 编译成机器代码的,就像我们前端写 TS 需要先将 TS 转换成 JS 后浏览器才能识别一样。但是现在的编译器一般都不需要先将C++转换成 C 的,而是一步到位的。


环境搭建


如果是使用 windows 平台,常用的编译器有 visual studio , visual c++6.0 ,borland c++ 和 code block 等。 我相信好多朋友对 visual c++6.0 , borland c++ 和 code block 肯定都不陌生,这是因为大学做课程设计时,老师经常推荐给我们的编译器,但是我不推荐,原因有二,第一,界面长得太丑了,起码是20年前的界面风格,第二,不够智能,比如自动补全或错误提示等都做得不好。至于 visual studio 确实很强大,但是对于新手也不太推荐,毕竟刚开始只是写 helloworld 级别的,如果使用这个就有点杀鸡用牛刀的感觉了。那怎么办呢?


我推荐的做法是,在 vscode(注意不是 visual studio)中编写 C++ 源码,然后使用 gcc 来编译源码,即把编辑器和编译器分开来用。


如果是使用 ubuntu 等 linux 系统,默认是装了 gcc 的,这里也不详细展开。本文主要讲的是 windows 平台下的搭建。


首先,安装 vscode ,同时要装上 C/C++ 插件,它会有自动补全和错误检测等功能(如果没有提示,可以安装 gcc 后再回头不试试)。



比如,我平时写前端,习惯了用 var 来声明变量,则会有如下提示,因为 c++ 是没有 var 标志符的:





鼠标移上去就会显示详细的错误信息:





还有关键字的自动补全,比如我们定义一个 double 类型的变量,输入 doub 就会有很多的选项:





然后,再来安装 gcc 编译器。windows 平台安装可以安装 mingw。可以到这里下载: MinGW-w64 - for 32 and 64 bit Windows 。往下稍微翻一下,选 x86_64-posix-seh。




提示:最好不要选择 MinGW-W64 Online Installer , 因为国内网络被墙的原因,在线安装有很大机率会安装失败。



下载完安装包之后,然后解压,你会发现它里面的目录结构如下:




接下来,还需要配置 path 路径,假如我解压到了 C 盘的 mingw 目录,则在环境变量 Path 中添加如下路径:


C:\mingw\bin


配置完成之后 ,打开命令行工具,cmd 或者 powsershell 都可以,输入 gcc -v




如果看到上面的信息,则说明我们的 gcc 已经配置成功了。如果没有,则检查一下你的 path 路径正不正确,或重启一下电脑试试。


现在编辑器和编译器我们都搭好了,可以快乐的来写 Hello World! 啦。


#include
int main() {
std::cout <<"Hello World!";
return 0;
}


然后在当前目录的终端中输入 g++ main.cpp ,就会发现当前目录下多了一个 a.exe 文件。,然后,再到终端中输入 ./a.exe 就可以执行该文件,并有 Hello World! 输出了。当然,编译和运行也可以合并成一条命令 g++ main.cpp && ./a.exe ,如下:




这段代码也很简单,首先是 #include 预处理指令引入 iostream 这个头文件,然后在 main 函数中输出 Hello World! 。iostream 这个是标准输入输出流的头文件,我们下面使用 std::cout 就在这里面定义的。


OK,这一章节就写到这里,如果有什么疑问的大家可以在评论区交流讨论哈~。


最后,网上也有很多教程是关于如何把 vscode 配置成可以编译 C++ 的,但是我觉得没有必要,我们就只使用 vscode 作为书写代码的编辑器就够了,编译我们使用命令行工具就行。




推荐阅读
author-avatar
Belief
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有