文章目录
一、Clion配置
1.1简介
1.1.1 Clion idea
CLion是Jetbrains公司旗下新推出的一款专为开发C/C++所设计的跨平台IDE,它是以IntelliJ为基础设计的,同时还包含了许多智能功能来提高开发人员的生产力。
同样支持python哦,相信使用过IntelliJ idea开发过java的盆友都很清楚该IDE的强大,所以做为Jetbrains旗下的c/c++开发工具CLion同样包含了许多智能功能来提高开发人员的生产力,提高开发人员的工作效率。
Clion 代码风格等配置同Jetbrains相关软件,这里就不详细说明了。
1.1.2 C与C++的区别;面向过程与面向对象的区别
- C++是面向对象的(object oriented programming—OOP)。强调对象,由对象实施动作。
- C是面向过程的(procedure oriented programming—POP)。强调执行的过程。
总结:面向对象是首先抽象出各种对象(各种类),把数据和方法都封装在对象中(类),然后各个对象之间发生相互作用。
面向过程是将问题分解成若干步骤(动作),每个步骤(动作)用一个函数来实现,在使用的时候,将数据传递给这些函数。
- 一个典型的例子:把大象放入冰箱里面。
C++是这么做的:涉及到两个对象:冰箱和大象。三个动作:打开冰箱,放置大象,关闭冰箱。
首先定义一个冰箱类,他有打开的方法,放置的方法,关闭的方法。然后再定义一个大象类。接下来构建冰箱和大象的对象,然后冰箱对象调用打开门的方法,冰箱对象再调用放置大象对象的方法,最后冰箱对象关门。
Fridge{
open();lay();close();}//冰箱类有三个方法
main()
{
Elephant elephant;//构建一个大象对象
Fridge fridge;//构造一个冰箱对象
fridge.open();
fridge.lay(elephant);
fridge.close();
}
而当C是这么做的:首先打开冰箱门,然后把大象放入进去,最后关闭冰箱门。
main()
{
open();
lay(elephant);
close();
}
再来一个典型的例子:下雨了,人打开雨伞:
C++是这么做的:涉及到三个对象:雨,人,伞。两个动作:雨下,人打开伞。
首先三个对象,即定义三个类。雨对象Rain,它有下雨的方法fall();人对象Person,他有打开的方法open();伞对象Umbrella;
Rain
{
fall();
}
Person
{
open();
}
main()
{
Rain rain;
Person person;
Umbrella umbrella;
rain.fall();
person.open(umbrella);
}
而C是这么做的:
面向过程:下雨了,人打开雨伞:
main()
{
rain();
open(umbrella);
}
1.2 配置c
我的mac电脑已经装了c了,所以就不下载了,如果没有下载参考下方操作。
默认已生成了main.c,但是我们并不能运行,因为我们还缺少编译环境,点击Setting打开设置,搜索Toolchains,我们发现clion为我们提供的环境有这么几种MinGW,CygWin,Visual studio等,我此处选择的是MinGw,点击右侧download,下载后运行安装即可,然后在Enviroment右侧选择mingw-w64的位置即可,如下图:
1.3选择对应c/c++
c++选择 executable
c选择 cxecutable
1.4 自行创建c++
如果我们可以自行创建c/c++文件,如图:
C语言选择.c,C++选择.cpp!
1.5 Clion中生成多个可执行文件
在构建一个新的Clion工程的时候,会自动生成一个文件夹cmake-build-debug,可以帮助我们快速的对整个C++工程进行编译运行。而主函数编译后生成的可执行文件就位于cmake-build-debug文件夹下面。
如果我们需要在一个C++工程中构建多个主函数并生成多个可执行文件的话,我们就需要对CMakeLists.txt进行修改。具体步骤如下:
(1)如果我们创建了两个主函数文件,分别为main.cpp和main2.cpp。
(2)在创建第一个main.cpp之后,假设在CMakeList.txt是这样子的:add_executable(MAIN main.cpp)。
(3)在创建第二个main2.cpp的时候,需要选择target,如果是选择了第一个main.cpp,那么在CMakeList.txt中会出现add_executable(MAIN main.cpp main2.cpp),然而这样是无法实现我们的需求的。
(4)因此我们需要修改为add_executable(MAIN main.cpp)和add_executable(MAIN2 main.cpp)就可以构建出两个可执行文件。
(5)在Clion中使用的时候,在软件的右上角可以选择是对哪一个主函数文件进行编译,或者是对整个工程的main函数都进行编译
个人操作案例:
我现在main.cpp 是c程序,我运行 mian.cpp ,
1.在cmakelists.txt中add_executable 修改对应.cpp文件即可
2.注意一定要重新编译项目才可以。
3.如果运行map1.cpp文件 只需要将cmakelists.txt中add_executable 修改.cpp文件即可
add_executable(map map1.cpp)