C++03でのローカルクラスの使い道

元質問者です。 C++言語仕様にある謎のローカルクラス(関数内でのクラス宣言)のイカした使い方をぜひ教えて下さい! @redboltz さんをはじめとする回答者の皆様、どうもありがとうございました(_o_)
2
redboltz @redboltz

c++03でローカルクラスの使い道って、どんなのがありますかね? 思いつかないもので。。。

2010-02-24 16:16:27
zak @zakkas783

@redboltz function-object、というあたりさわりのないところはいいとして、どこかでリバースエンジニアリング抑止、というネタを見た気がします。

2010-02-24 16:27:23
redboltz @redboltz

@zakkas783 function objectの場合、テンプレートで受けられなくて使えないような気が

2010-02-24 16:31:28
zak @zakkas783

@redboltz ですね。イカした使いかた実例は一寸思い付きません…。

2010-02-24 16:35:17
ELD-R-ESH-2 @eldesh

@redboltz ダイナミックデリータの実装でローカルクラスをベースクラスとして使うとか。# カタカナばっかりだと間抜けっぽいな

2010-02-24 16:45:03
めるぽん.am @melponn

アドホックに RTTI が欲しいときに使ってます。 RT @redboltz: c++03でローカルクラスの使い道って、どんなのがありますかね?思いつかないもので。。。

2010-02-24 17:07:25
めるぽん.am @melponn

struct hoge_guard { hoge& v; hoge_guard(hoge& v_) : v(v_) { } ~hoge_guard() { v_.hogehoge(); } }; hoge_guard guard(h);

2010-02-24 17:11:33
redboltz @redboltz

shared_ptrのdeleter的なユースケースで全部スタック上ですますめたいなイメージですかね?RT @melponn: アドホックに RTTI が欲しいときに使ってます。 RT @redboltz: c++03でローカルクラスの使い道って、どんなのがありますかね?思いつか

2010-02-24 17:29:16
Akira Takahashi @cpp_akira

ローカルクラスよりinner classの使いどころがわからない。

2010-02-24 17:30:05
redboltz @redboltz

カタカナのせいかイメージがわいてません(汗)RT @eldesh: @redboltz ダイナミックデリータの実装でローカルクラスをベースクラスとして使うとか。# カタカナばっかりだと間抜けっぽいな

2010-02-24 17:30:44
Akira Takahashi @cpp_akira

ローカルクラスの使いどころ:BOOST_SCOPE_EXITが使えない状況で、同じことをする。

2010-02-24 17:31:16
ELD-R-ESH-2 @eldesh

@redboltz 言いたかったのはちょうどこれですw RT @redboltz: shared_ptrのdeleter的なユースケースで全部スタック上ですますめたいなイメージですかね?RT @melponn: アドホックに RTTI が欲しいときに使ってます。 RT @red

2010-02-24 17:38:58
👻 道化師 🃏 @wraith13

@repeatedly finally 代わりの用途だと思えばおk> http://togetter.com/li/7016 [電波注意]

2010-02-25 12:58:58
SKS/ファントムの申し子 @repeatedly

@wraith13 めるぽんさんの「アドホックにRTTIが欲しい」の後のコードがいまいち分からなかったりします.構造体の破棄でデストラクタ呼び出しを強制しているとは思うのですが,RTTIとどう関係あるのか

2010-02-25 13:01:15
SKS/ファントムの申し子 @repeatedly

俺の中でのRTTIのイメージってtypeidとかで実行時の型を取ってほげほげなので,それが狭すぎるのかもしれない.

2010-02-25 13:01:48
👻 道化師 🃏 @wraith13

@repeatedly 自分も文脈的に RAII の間違いだと思ふ。 [電波注意]

2010-02-25 13:07:14
SKS/ファントムの申し子 @repeatedly

D言語だと「いやこれRAIIのことでしょ」と反応できるが,C++だと「え,これもRTTIの範疇なの?」と思えるほどにC++はカオス.

2010-02-25 13:08:44