C++を書くときのIDEとしてはVisual Studioが良いという話はよく聞きますが、残念ながらMacだとVisual Studioは使えません。MacとWindowsで同じ環境を使いたいという際にもVisual Studioならば困ってしまいます。
たまたま、社内の人がCLion(しーらいおん)いいよと言ってたので、CLion使ってみたら思ったより良かったのでここにインストールと簡単な使用方法を書いておきます。またMacとWindowsでCLion 2017.1で動作確認しています。Linuxでも問題なく動くと思われます。
なお、自分が勤めている会社ではCLion含めてJetBrainのIntelliJ IDEAなどのIDEのライセンスを買っており使うことができました。CLionは無料体験も30日できる他、学生のメールアドレスを持っていれば無料で使うことができます。学生の方はこのページの Apply Nowボタンから学生メアドでapplyすることでJetBrainアカウントを作り、起動時にRegisterすることで無料で利用できます。
インストール
https://www.jetbrains.com/clion/download/ から自分のプラットフォームにあったものをダウンロードしてインストールします。CMakeはバンドルされているものを使い、基本的にはデフォルト設定でインストールすることをおすすめします。
インストールの詳細はこちらにチュートリアル(英語)があります。
なおWindowsではMinGWをインストールしてhomeフォルダを設定する必要があります。
上記のようにMinGWのhomeを設定するダイアログがインストール時に表示されます。
http://www.mingw.org/の右上のボタンのDownload Installerからダウンロードできるインストーラーを利用したインストールをして中で、
- mingw32-developer-tool
- mingw32-base
- mingw32-g++
- msys-base
をインストールしておけば大丈夫です。上記の項目を右クリックから、Mark for Installationのチェックをいれてメニューの Installation > Apply Change を実行してインストールを完了したことを確認の後、インストーラーを閉じてください。そして、MinGWのパス、CMakeのcmake.exeのパスが起動時に求められますので設定します。
すでに起動済みであれば、Settings > Build, Execution, Deployment > Toolchins の中に設定する場所があります。
こんな感じで設定して利用できます。
起動と実行
起動するとこんな画面で、New Projectでプロジェクトを作ります。自分はstudyという名前のプロジェクトを作りました。
プロジェクトができると以下のように表示されます。
起動するとこんな感じでC++のひな形がてきています。右上の、 ボタンを押すと実行されます。
こんなに簡単に実行してくれます。Hello World!が表示されました。
コードアシスト
コードを書いてみるとちゃんとコードアシストもしてくれます。STLのメソッド名とか覚えてないのでこれは本当にありがたいです。(C++は日本語のリファレンスが整備されていて便利ですが...。)
ブレークポイントとステップ実行
無論ブレークポイントも貼れます。コードの左側をクリックしてブレークポイントを貼ってでバッグ実行すると、
ちゃんとステップ実行されて、変数の確認もできます。便利。
リファクタリング
IDEAなどにある変数名のリファクタも健在。
このように変数も安全に名前を変えることができました。
既存の関数のコードアシスト
自分で作った関数の補完も問題なくやってくれます。
C言語も書ける
.c 拡張子のファイルを用意するだけで特に問題なくC言語もかけるようでした。
C言語を書くときにもしっかり利用したいなと思います。
コマンドプロンプトやターミナルでビルドしたい時
Macならターミナル、WindowsならMingGW Command Promptを立ち上げて、
g++ main.cpp
で、a.outかa.exeなんかをビルドすることができるので随時それを使ってください。
最後に
C++、自分は殆ど競技プログラミングでしか書くことがなかったのですが、毎回STLのAPIを調べながらLinux上でvimで書いているのが結構面倒でした。CLionを使うと結構楽ができそうな感じがするので、ちょっと使い続けてみようかなと思います。よく使うコードなどをLiveTemplateなどに登録しておくのも良いかもしれません。
あと、Qiitaで調べてみたら http://qiita.com/ShigekiKarita/items/a75c8fcaa23041b6a8a1 でGoogle Testとかもできるらしいので今度やってみたいところ。