2008-12-31

http://anond.hatelabo.jp/20081231194010

うーん。

K&Rでも「5.11関数へのポインタ」で触れられてるのはqsortの話だし、そこで「関数へのポインタ定義できるよ」とはある。個人的にこれは意図していないけど載ってることだとは思ってた。だからこの使い方が当初から意図されているかどうかと言うと、現場側のフィードバックだと思うんだけどなあ。

でも、もしも僕の言うようにバッドノウハウだったとしても、仕様に取り込まれた時点で意図されてることになるのかなあ。現時点でバッドノウハウだったっていうのは言い過ぎか。

この辺のデバッグのしづらさとかこんらんっぷりで良い思い出が無いから言いすぎてたかも。ごめんなさい。

んー。この辺の関数へのポインタ定義できることの応用のどこからがバッドノウハウで、どこまでが普通の使い方ってのは切り分け出来ないし、切り分けてもそれほど意味は無いか。

記事への反応 -
  • 関数ポインタはバッドノウハウどころか、手続き的な抽象を使いたいところで多用しますぜ。 C++やオブジェクト指向言語だと 継承と仮想関数を使うけど、同じようなケースで C言語では...

    • そういうのはバッドノウハウとは言わないの?(「本来想定されていない使い方をするために、工夫してできるようにしちゃうノウハウ」を指してバッドノウハウと言うんだと思ってたか...

      • そういうのはバッドノウハウとは言わないの? 関数ポインタをバッドノウハウとは言わないでしょ。C言語自体がバッドノウハウと言うなら、当たりだけど:) 手続きという抽象はまこと...

        • 関数ポインタで、例示された5つを実現するのはバッドノウハウじゃないの? 「関数ポインタを使ってプログラミングしましょう」というプログラミングスタイルは、正統派ではないと...

          • 例示された 5つ が 動的コード操作のことを指しているのなら、そりゃバッドノウハウかもね。 でも関数ポインタは… 「関数ポインタを使ってプログラミングしましょう」というプロ...

            • うーん。 K&Rでも「5.11関数へのポインタ」で触れられてるのはqsortの話だし、そこで「関数へのポインタを定義できるよ」とはある。個人的にこれは意図していないけど載ってることだ...

            • 関数ポインタはバッドノウハウになっているよ、確かに。 じゃぁ、何がグッドノウハウかというとC++のVirtual関数 C++の継承やVirtual関数は中身はvtableでvtableって何のこと?っていうと 関数...

              • 関数ポインタがバッドノウハウ的であるような根拠があれば納得できるんだけど。 オブジェクト指向だってバッドノウハウじゃない?ツリーの途中で指摘されてなかった? 昨日からお前...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん