web-dev-qa-db-ja.com

CLionで単一のファイルを作成、コンパイル、実行する方法

私はいくつかのc ++に取り組んでおり、ファイルでいくつかのことを実行するためだけにまったく新しいプロジェクトを作成する必要が嫌です。

また、プロジェクトを作成するときにファイルがすでにmain.cpp

いくつかの関数またはクラスを持つ単一のファイルを作成したいだけです。プロジェクト全体を作成することは重要ではありません。

私はファイルを作成し、欲しいものを呼び出したいです。ファイルを作成して、コンパイルして実行します。

CMake全体を処理するのではなく、1つのファイルをコンパイルするだけです。

関連するプロジェクトはありません。ありがとうございました。

Visual Studioでこれができることは知っていますが、Clionを使用してMac OS Xで作業しています。

28
Rishi Desai

CMakeLists.txtを変更できます

ここに例:

_cmake_minimum_required(VERSION 3.3)
project(test_build)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(BUILD_1 main)
set(SOURCE_FILES_1 main.cc) //where main.cc is your first main/program
add_executable(${BUILD_1} ${SOURCE_FILES_1})

set(BUILD_2 main_2)
set(SOURCE_FILES_2 main_2.cc) //where main_2.cc is your second main/program
add_executable(${BUILD_2} ${SOURCE_FILES_2})
_

またはテスト(ガベージバージョン)を使用:
add_executable(foo bar.cc)

その後、CLionで必要なビルドを選択できます

22
Waxo

私はちょうど同じ質問があり、このスレッドにつまずいた後、このプラグインで私の解決策を見つけました。このプラグインが行うことは、基本的にはユーザーWaxoが自動的に提案したことです。各実行可能ファイルに対してCMakeLists.txtに1行追加します。エディターを右クリックして選択するだけです。私はそれが非常に有用であることがわかり、主にアルゴリズム競技に使用しています。これが役立つことを願っています: https://plugins.jetbrains.com/plugin/8352-c-c--single-file-execution

乾杯!

10
sabak

IDE全体の移植可能なソリューションの場合、scratch()の最初にmain()関数を呼び出し、スクラッチ関数の最後にexit(0);を配置します。

scratch()内では、必要に応じて別のファイルで何かを呼び出すことができます。私は通常、そこでスニペットをテストするだけです。

0
Koz