手把手教你使用 Clion 开发 Linux C++ 项目

手把手教你使用 Clion 开发 Linux C++ 项目

关于CLion

CLion是一款专为开发C及C++所设计的跨平台IDE。它是以IntelliJ为基础设计的,包含了许多智能功能来提高开发人员的生产力,提高开发人员的工作效率。这种强大的IDE帮助开发人员在Linux、OS X和Windows上来开发C/C++,同时它还使用智能编辑器来提高代码质量、自动代码重构并且深度整合CMake编译系统,从而提高开发人员的工作效率。
重要功能有:
提供C及C++支持(包含C++11, libc++ 和Boost),同时也支持JavaScript, XML, HTML 和CSS 。
跨平台:您可在64-bit Linux,OS X 以及64-bit Windows上使用它。
支持GCC、clang、MinGW、Cygwin 编译器以及 GDB 调试器。
提供对CMake 支持:包含自动处理CMake changes和CMake targets,更新新创建的 C/C++ 档案及CMake Cache 编辑器。
提供各式编码辅助:包含多行编辑功能、智能完成功能以及一键导航等。
安全可信的自动代码重构功能。
代码分析功能:监控代码品质并提供快速修复让开发人员得以及时就地解决问题。
集成GDB 调试器及评估表达式(expressions)功能、STL 容器渲染器(renderers)、监视(watches)、内嵌变量视图等。
与最热门的版本控制系统集成:Subversion、Git、GitHub,、Mercurial、CVS、Perforce及TFS。
内建terminal 模式并可通过插件实现提供Vim-emulation模式。
智能编辑器-CLion的智能编辑器能帮助开发人员更快地将代码补全,同时它还保持开发人员的代码格式化并符合配置编码的风格。使用此智能编辑器能快速选择代码块,还可以将代码重新排序。

代码生成和重构-在CLion中,开发人员可以使用之前定义发布的函数、变量、数据成员或者一个类,在IDE中会用红色来突出显示。同时CLion还提供了一套可靠的重构来帮助开发人员保持代码的质量,此代码重构适用于整个变化范围。
代码分析-CLion还提供了动态的代码分析,能不断地监控代码潜在的错误。如果在编辑器中找到了可以的代码,那么它会提出快速修正的方法来解决这个问题。
支持CMake-CLion提供了对CMake的支持,这包括了自动处理CMake changes和CMake targets更新新创建的 C/C++ 档案及CMake Cache 编辑器。

关于本文示例代码

代码配置在一台名称为ubuntu的linux开发机上,代码清单如下所示,分别为main.cc和CMakeLists.txt

#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <iostream>

/**
 * power - Calculate the power of number.
 * @param base: Base value.
 * @param exponent: Exponent value.
 *
 * @return base raised to the power exponent.
 */
double power(double base, int exponent)
{
    int result = base;
    int i;

    if (exponent == 0) {
        return 1;
    }

    for(i = 1; i < exponent; ++i){
        result = result * base;
    }

    return result;
}

int main(int argc, char *argv[])
{
    if (argc < 3){
        printf("Usage: %s base exponent \n", argv[0]);
        return 1;
    }
    double base = atof(argv[1]);
    int exponent = atoi(argv[2]);
    double result = power(base, exponent);
    printf("%g ^ %d is %g test\n", base, exponent, result);

    std::string ss;
    ss = "teetee";

    std::cout<< ss.append("hello")<<std::endl;

    return 0;
}
cmake_minimum_required (VERSION 2.8)

project (Demo1)
add_executable(Demo main.cc)

关于具体配置方法

首先将远程的ubuntu开发服务器加入Clion

其次配置项目双向关联

接下来配置演示如何调试代码

最后说明如何使用CLion提供的静态分析功能分析项目中代码的问题

总结

本文完整的介绍了使用Clion 开发 Linux C++ 项目的每一个步骤,提供了完整的测试代码,同时在需要配置的地方都给出了完整的截图,希望对大家有所帮助。

原文地址:https://www.cnblogs.com/pugang/p/9734547.html

时间: 2024-10-10 20:07:08

手把手教你使用 Clion 开发 Linux C++ 项目的相关文章

CSS3实战开发:手把手教你照片墙实战开发

在<CSS3 2D转换技术之translate实战开发>文章中,我给大家列出了CSS3中的2D转换方法: 1.    translate() 2.    rotate() 3.    scale() 4.    skew() 5.    matrix() 同时对第一个方法 translate()做了非常详尽的介绍,并带领大家实战开发了一个导航条.如果你对translate不了解或不是太熟悉,请阅读我的博文 <CSS3 2D转换技术之translate实战开发> . 在讲解知识点之前

手把手教你配置一台Linux虚拟机

手把手教你配置一台Linux虚拟机 准备:一台电脑(windows),虚拟机软件VMware Workstation Pro,Linux distribution 版本 CentOS-6.8,活人一个 在开始正式操作之前我们先来理清一下安装思路,当然,这个思路需要有一定的计算机基础知识.不过不用担心,用到的计算机知识不是很难,如果难的话我也不会了. 安装流程(默认已经装好运行虚拟机的软件): 第一步:设置启动介质(media),通过BIOS 通常我们在装一个系统前,我们拿到的电脑是一台裸机,它是

手把手教你构建自己的Linux系统 —— 软件包下载地址

wget -c http://ftp.gnu.org/gnu/binutils/binutils-2.7.tar.gz wget -c http://ftp.gnu.org/gnu/gcc/gcc-4.4.2/gcc-4.4.2.tar.bz2 wget -c https://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.1.tar.bz2 wget -c http://ftp.gnu.org/gnu/glibc/glibc-2.11.tar

手把手教你使用FineUI开发一个b/s结构的取送货管理信息系统系列博文索引

近阶段接到一些b/s类型的软件项目,但是团队成员之前大部分没有这方面的开发经验,于是自己选择了一套目前网上比较容易上手的开发框架(FineUI),计划录制一套视频讲座,来讲解如何利用FineUI快速开发一个小型的b/s结构的管理系统,已达到帮助团队成员快速掌握b/s结构信息系统的开发方法. 源码位置:https://github.com/kamiba/FineUIDemo 源码下载办法:安装SVN客户端(本文最后提供下载地址),然后checkout以下的地址:https://github.com

东方耀 手把手教React Native实战开发视频教程+源码笔记全集

课程序号标题 第0课0.手把手教React Native实战之开山篇_视频 第1课1.手把手教React Native实战之环境搭建_视频_Windows环境 第1课1.手把手教React Native实战之环境搭建[Mac真机]同时调试开发Android&IOS 第2课2.手把手教React Native实战之从React到RN 第3课3.手把手教React Native实战之flexbox布局(RN基础) 第4讲4.手把手教React Native实战之flexbox布局(伸缩属性) 第5讲

手把手教你搭建PHP开发“黄金自由新搭档”

引言:随着PHP广泛应用白热化,大家使用的开发工具从重量级的ZendStudio到轻量级的Notepad++可以说是五花八门.应有尽有,这给初学者带来不少困惑,工具太多了就无从下手选择适合自己需要的东东.笔者亲自测试和比较,选择适合大多数开发人员追求既"自由.快捷.简便"又满足功能强大的实际需要,从自定义PHP运行环境配置文件着手搭建PHP开发平台,并给出详细的操作步骤.手把手教你用网络风暴WebStorm+集成开发工具PhpStorm+自定义运行环境phpRE搭建PHP开发"

手把手教你从零实现Linux misc设备驱动一(基于友善之臂4412开发板)

关于如何来写一个misc设备,在前面有篇文章已经介绍了大致的流程,现在就让我们来实现一个最简单的misc设备驱动. http://blog.csdn.net/morixinguan/article/details/52700146 关于前面的字符设备有以下四篇文章,可以做参考: http://blog.csdn.net/morixinguan/article/details/55002774 http://blog.csdn.net/morixinguan/article/details/550

手把手教你智能硬件开发(一) 我选Arduino

第1节 我选Arduino 高大上的无人机玩过吗?智能的家庭空气检测仪见过吗?手机控制的电子体重秤.血压仪用过吗?这些"高科技"都属于智能硬件. 作为软件开发者的你,有没有想过自己开发一个智能硬件呢? 也许你会觉得硬件开发的门槛很高,作为小白或者软件开发者难以企及,那么这你就想错了.其实,现在已经有了很多专门为软件开发者设计的智能硬件开发平台.例如现在火爆的树莓派-raspberry pi.英特尔推出的爱迪生-Edison,以及本系列讲重点介绍的Arduino. 有了它们,即使你对硬件

手把手教你智能硬件开发(六)直流马达

第6节 直流马达 马达是我们经常使用到的电动装置,它可以将电能转化成动能,驱动其他东西的运动.听起来很抽象,举几个例子吧. 我们小时候玩的四驱车,带动轮子转动的那个小装置就是马达:夏天让风扇旋转带给我们凉意,也是马达的功劳. 根据使用电源的不同,可以将马达分成直流马达和交流马达.我们做智能硬件使用的基本都是直流马达,通过马达来驱动外接设备运动. 6.1 工作原理 将电能转化成动能的物理原理,我们在中学已经学过,这里利用了两个原理:电磁感应和磁铁的同性相斥异性相吸. 将一根磁棒放在金属罩中间,两端