Google Colaboratory と Github を連携させつつ C++ の演習環境を作る

動機

REPL が好きなのですが、C++ (Win) でいい感じの REPL が無いものかと探していた中で以下のページにたどり着きました。

mycolabnotebooks/learncpp.ipynb at master · kalz2q/mycolabnotebooks · GitHub

Google Colab は使ったことはあったものの、Python 環境でしか利用したことがなかったので、まさか C++ でも使えるとは驚きました。
しかも Github に保存もできるということで、ログを残すにももってこいだなと思い、同様の環境を作ることにしました。

Google Colaboratory と Github の連携

Github に保存用のリポジトリを作成しておく

ipynb ファイルの保存先になります。雑に作って問題ありません。
作った直後だと branch が無い可能性があるので、README.md あたりを作っておくとスムーズです。

Colab のノートを Github に保存する

迷うまでもなく、そういうボタンがあります。 f:id:you1dan:20220109085216p:plain

おそらく初回では Github との連携の許可を求められるので許可します。 f:id:you1dan:20220109085417p:plain

許可が終わると、保存先のリポジトリを選択できるようになるので、先程作ったリポジトリを選択し OK します。 f:id:you1dan:20220109085539p:plain

Github に保存されていることが確認できました 🎉 f:id:you1dan:20220109085727p:plain

C++ の演習環境

最初に貼ったページの通りですが自分のメモ用に。

実行したい C++ のコードを temp.cpp に書き出し

%%writefile temp.cpp
int main {
  return 0;
}

コンパイルし、生成された a.out を実行するだけです。

!g++ temp.cpp; ./a.out