Open2

C++の知見メモ

こどはざこどはざ

create std::vector larger than max_size() エラー

create std::vector larger than max_size() これがどこで発生しているのか特定するのが難しかった。
原因は string 型に + 1 などしようとした結果だった。stringは vector<char> だからってことかな。 char だと数値として+N分進めてくれるけど、このあたりスクリプト言語を触っていた自分には最初違和感があった。

int num = 1;
cout << "result: " + num <<endl;  // error: create std::vector larger than max_size()

こうしよう。

int num = 1;
cout << "result: " << num <<endl;

// cast
cout << "result: " + to_string(num) <<endl;
こどはざこどはざ

Apple Silicon Mac では gdb が使えない

現状代わりにLLDBを使うしかなさそう。
ただLLVMでコンパイルしなければならなく、競プロ環境に合わせて g++ を使いたい自分としてはいったんデバッガーの利用は必要になるまで置いておくことにする。