配置
工具>编译系统>新建编译系统
(英文版也是类似的)
然后把下面的这些东西复制进去就好了。
配置文件
{
"cmd": ["g++", "${file}", "-std=c++11", "-o", "${file_path}/${file_base_name}", "&", "start", "cmd", "/c", "${file_base_name} & echo. & pause"],
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", "working_dir": "${file_path}",
"selector": "source.c, source.c++", "shell": true,
"encoding":"cp936",
"variants":
[
{
"name" : "Build Only",
"cmd":["g++", "${file}", "-std=c++11", "-o", "${file_path}/${file_base_name}"]
},
{
"name" : "Run Only",
"cmd" : ["start", "cmd", "/c", "${file_base_name} & echo. & pause"]
},
{
"name" : "Pipe Build and Run",
"cmd":["g++", "${file}", "-std=c++11", "-o", "${file_path}/${file_base_name}","&","${file_base_name}", "<","in",">","out"]
},
{
"name" : "Pipe Run Only",
"cmd" : ["${file_base_name}", "<","in",">","out"]
},
{
"name" : "Project Build & Run",
"cmd" : ["g++", "${file_path}\\*.cpp", "-std=c++11", "-o", "${file_path}/project", "&", "start", "cmd", "/c", "project & echo. & pause"]
},
{
"name" : "Project Build Only",
"cmd" : ["g++", "${file_path}\\*.cpp", "-std=c++11", "-o", "${file_path}/project"]
},
{
"name" : "Project Run Only",
"cmd" : ["start", "cmd", "/c", "project & echo. & pause"]
}
]
}
使用方法 以及 命令解释
这两个要放在一起来解释。
首先,通过命令ctrl+shift+B 就会弹出一些来进行选择。
选择的内容就是:
编译系统——name (这个的编译系统就是这里创建的时候命名的东西), name就是上面的很多个[ ] 之间的那个name。
然后选择之后,执行的命令就是下面的那个cmd的内容。
cmd解释:
- g++ 是编译器
- -std=c++11 就是说,使用c++11的标准(目前比较主流的标准了)
- -o 后面跟的输出的文件(就是说,将前面编译的结果输出到后面的这个文件中。 覆盖创建)
- ${file_base_name}意思就是对应的cpp文件,的cpp尾缀的前面的文件名。
- ${file_path}意思是,对应的cpp文件的路径。
- & 表示的是命令之间的中断,意思是,在执行完前面的命令之后再执行后面的命令。
- start 的是启动的意思。 配合上后面的cmd,再加上/c,个人觉得有create的含义。就是创建一个cmd窗口。
- echo是输出的意思。在上面的命令是 echo. ,注意后面的那个点。表示的是只输出一个换行。(如果不加点的话,这里由于后面没有文件,就会表示激活这软件,然后会多一个不相干的输出。)
- pause表示的是,页面暂停。就是停下来呗。(在vs中就是需要加上system(“pause”) 有异曲同工之妙。)
- > 这个跟后面的相反符号 表示的输入输出重载,将标准输入跟标准输出,通过命令变成文件流。(后面跟着的就是文件名)
结合这些就可以了。其他的在命令中出现的不相关的,就是文件名。