メモの日々


2008年03月01日(土) [長年日記]

  • やること山積みなのにゴロゴロしてしまった。世界卓球観たり。韓陽安定。水谷もう一息。

[c++] boost/program_options の positional_options 動いた

昨日のプログラムは間違えていたようだ。

Keep It Simple, Stupid.にpositional_optionsを使ったサンプルがあったので試してみたら動いた。違いを調べると、positional_options_description単独で名前なしオプションを定義すればいいのだと思っていたが、options_descriptionで定義したオプションに対しpositional_options_descriptionを使うのが正しいみたい。

昨日のプログラムに対し

--- program_options.cpp.old     2008-02-28 13:07:50.000000000 +0900
+++ program_options.cpp 2008-02-28 12:54:50.000000000 +0900
@@ -14,7 +14,7 @@
 int main(int argc, char* argv[]) {
     po::options_description options("Allowed options");
     options.add_options()
-        ("aaaa,a", po::value<string>())
+        ("XXXX,a", po::value<string>())
         ("help,h", "help");
     po::positional_options_description xxxx;
     xxxx.add("XXXX", -1);
@@ -37,7 +37,7 @@
 //            exit(2);
         }

-        cout << "XXXX is " << vm["XXXX"].as<vector<string> >()[0];
+        cout << "XXXX is " << vm["XXXX"].as<string>() << "\n";
     } catch (exception& e) {
         cerr << e.what() << "\n" << options;
         exit(2);

という修正を行うことで、

$ ./a.out param
XXXX is param

$ ./a.out param param2
multiple_occurrences
Allowed options:
  -a [ --XXXX ] arg
  -h [ --help ]         help

$ ./a.out --XXXX param
XXXX is param

$ ./a.out --XXXX param param2
multiple_occurrences
Allowed options:
  -a [ --XXXX ] arg
  -h [ --help ]         help

のように動くようになった。

[howto] Debianでパッケージのソースをダウンロードする

方法を調べたので覚え書き。

準備として、/etc/apt/sources.list に deb-src で始まる行が必要みたい。その記述を追加したら、

apt-get source <パッケージ名>

とするとカレントディレクトリに関連ファイルのアーカイブがダウンロードされ、アーカイブの展開までされた。apt-getではなくaptitudeで実行する方法は分からなくて、aptitudeではできないのかもしれない。

[howto] Debianでパッケージに含まれるファイルの一覧を表示

この場合はdpkgコマンドを使う必要があって

dpkg -L <パッケージ名>

とするようだ。ちなみに、rpmの場合は

rpm -ql <パッケージ名>

だったはず。

[howto] Debianでファイルが含まれていたパッケージを表示

dpkg -S <ファイルパス>

とするみたい。rpmだと

rpm -qf <ファイルパス>

かな。

[howto][dev] gdbでソースファイルの場所の指定

directoryコマンドでできる。

[life] 敷金から引かれた額

以前の住処の敷金の戻り金額が通知された。9万円くらい引かれるとのこと。内訳は

壁紙貼替5万円
清掃工事3万円
エアコン内部洗浄1万円

て感じ。壁紙は10万円の所を貸主と50%ずつ負担、清掃/洗浄は100%負担。ボッタクラレテル?

やること

  • クレジットカード
  • 銀行
  • 新税務署
  • ダンボール
  • 水道料金
  • 敷金の確認
  • ゴミ箱を買う