タグ

c++とgoogleに関するf99aqのブックマーク (2)

  • C++ のプログラムのデバッグを楽にする方法

    Google が公開しているソフトウェアの解説シリーズ(→その1 , その2)の続きです。今回は google-glog を使ってスタックトレースを表示する方法についてご紹介します。 C++ でプログラムを書いているとよく遭遇するのがセグメンテーション違反というエラーです。不正なアドレスへのアクセスなどによりセグメンテーション違反が起きると、通常、 UNIX 系の OS では SIGSEGV というシグナルによってプログラムが終了するとともに、 core というファイルが作られます。 core ファイルにはデバッガから参照できるいろいろな情報が残っていますが、多くの場合に役に立つのは、スタックトレースという情報です。スタックトレースを見れば、プログラムがどこでクラッシュしたのか、どのような関数を経由してそこにたどり着いたのかがわかります。プログラムがクラッシュした箇所を特定できれば、単純な

    C++ のプログラムのデバッグを楽にする方法
  • Google Japan Blog: Google が公開しているソフトウェアの解説 ( その 1 )

    今後複数回にわたり Google がオープンソースとして公開しているソフトウェアの紹介をしていきます。 第一弾はコマンドラインの解析ライブラリ google-gflags です。 このライブラリは実際に Google 社内で一般的に使われており、入社したエンジニアがまず最初に覚える Google インフラストラクチャーの1つです。 % foo --big_menu --language japanese この場合、--big_menu や --language japanese がコマンドラインフラグに相当します。--big_menu は引数を取らないコマンドライン、--language は japanese という引数を取ります。 google-gflagsは getopt といった既存のライブラリと設計もそのユースケースも大きく異なります。 getopt の場合、次のようにコマンドライ

    Google Japan Blog: Google が公開しているソフトウェアの解説 ( その 1 )
    f99aq
    f99aq 2007/07/12
    google-gflags
  • 1