C++相談室 part21

このエントリーをはてなブックマークに追加
953デフォルトの名無しさん:03/08/09 02:52
保守
954デフォルトの名無しさん:03/08/09 03:03



みなさんもこの問題をといて見てはいかが?
C言語の問題です。
http://jbbs.shitaraba.com/game/bbs/read.cgi?BBS=1314&KEY=1060147851&START=115&END=200&NOFIRST=TRUE
955938:03/08/09 08:13
>>947
>>950

バグですか。
実は同じ号のlist7,8も上手くコンパイルが通らず、こっちは調べて
解決出来たのですが、938の件では自分・記事・コンパイラの
どれが悪いのか悩みました。

その後の号でも訂正記事は載ってないと思うのですが、やはり
Cマガを読んで勉強する人はあまりいないんですかね?

とりあえずバグということで納得して、次に進みたいと思います。
どうも有難うございました。
957デフォルトの名無しさん:03/08/09 14:18
映画が本当になったぞ!!
レインボーブリッジが封鎖されてるよ!!
>>957
うそつけー。
レインボーブリッジが光ってるよ!!
レインボーブリッジの制御プログラムはC++で書かれている。
                        / ̄ ̄ ̄ ̄ ̄ ̄ ̄
     /\      /\        < 糞スレ
     /  \    /  \        |  おめでとうございまーす
    /     \_/    \      \_______
    /               \
   /                ヽ___  ___
  /  /  ヽ__/  \    /     ゙Y"     \
 |         │  /      /               \
 |       丶/     /                 \
 \         / ̄ ̄ ̄ ̄)        *      ( ̄ ̄ ̄ ̄)
   ヽ_____|    ─<         |\      >─   (
           |      )     /  (|ミ;\    (      )
           ヽ    ̄ ̄)    /(___人|,iミ'=;\  (  ̄ ̄   )
           /" ̄ ̄ ̄ ̄   /    《v厂リiy\  ̄ ̄ ̄ ̄\
           /        /        ゙|,/'' v:,,、.¨)z,_       \
          /       /         ミ/ .-─ .゙》z、      \
          /      /           〔」″ノ‐ 、u ¨\      )
         (      /             ゙|, ..冫 .rー    ̄\_   |
          |      〔              ミ./′   ..r-ー __,,ア┐ |
          |      |              {. .,,,,   .′ .´′ .¨\|
          |       |              ∨   ノ冖′=vvvvvv¨\
          |     /               ミ.  ,i'          .゙\_
          |     /                .{. ノ  ,r¬″       .¨\
          |     /                 ゙|, |  ノ      ー'''''''''''  .ーミz
          |     |                  ミ.     .,、 ._,,,、、r   ,,,,_____ ゙┐
      _/"     |                  .ミ.   ./′ ´′      ̄⌒'h..¥
     (______)                  {.  }  ._,,,、  ,ノ冖''^¨    ″〕
                                 ゙|, .,| ./`  ,r'′  vvvv、   |
                                  .ミ、.` |    二、      〔  、 ,|
                                  .〔  |  .、 〔  rーー   |  |.,}
                                   .ミ .′ .|  〕  .} ─-「  y-リ
                                   .\   |,  ´v,,,]、、、v-  ..,/′
                                     ゙\ .\、    .  _/
                                      ¨'ーvu,,____''工レ-'″
963デフォルトの名無しさん:03/08/09 18:59
VC7.1でstlportを使うメリットはありますか?
964デフォルトの名無しさん:03/08/10 00:27
教えてください。
仮想関数テーブルはすべてのクラスのインスタンスにコピー
されていると聞いたのですがなぜですか?
1つのテーブルを共有すればいいと思うのですが。。。
>>964 安心されよ。
つーか、仮想関数テーブルはクラスに1つだろ。
インスタンスは、そいつへのポインタを持つのがふつう。
967964:03/08/10 00:39
>>966
ですよね。僕もそうだと思っていたのですが
最近読んだ書籍に、継承を多用するのは各インスタンスの
仮想関数テーブルを増大するから良くないみたいに書かれて
いたのです。
>>967
> 継承を多用するのは各インスタンスの仮想関数テーブルを増大するから良くない
その書籍は捨てた方がいいかもな。
その書籍の題名とISBNをたのむ。
970964:03/08/10 01:00
>>968
ネットでいろいろ調べてみたのですが...

>その書籍は捨てた方がいいかもな。


みたいですね。。。(−−);;
多重継承を多用するってんならともかく。
>>971 ハァ?
973デフォルトの名無しさん:03/08/10 01:34
Cを初めて触る初心者に適したマニュアルありますか?
>>970
その書籍の題名を。
>>972
多重継承する場合は、1 インスタンス中に vptr (vtbl を指してるポインタ)
が複数格納されるっつー話なら、正しいぞ。
>>975
それは普通にサブオブジェクトとして格納された結果だろ。
vtblは関係ない。
977964:03/08/10 01:55
>>974
いちおう...
「MFCインターナル」のP185です
978964:03/08/10 01:59
969さんも聞いてくれていたのですね。
同時刻書き込みで見忘れてますた。
結構メジャーな本なのですが。。。
979964:03/08/10 02:10
んで関連質問なのですが、今基本クラスで仮想関数として
定義されている関数foo()を派生クラスでオーバーライド
しているとき、両クラスはもちろん別のvtblを持つと思いますが
テーブル内のfoo()の場所は同一のオフセットと考えていいですよね。
>>979
そう考えてあながち間違いではないが、
その考えに基づいたプログラムを書いてはいけない。
981979:03/08/10 02:16
>>980
具体的にどんなミスがでるのですか?
>>981
処理系依存のプログラムになる。
このスレで聞くからには処理系依存は良しとされないだろう。
983979:03/08/10 02:22
>>982
あ、なるほど。
もっともです。。。(--);;
>>967
継承を多用するとそのクラスごとに仮想関数テーブルが作製される。
仮想関数の数が途方も無く多いと弊害がでる。

MFCってことはウインドウメッセージをそれぞれすべて仮想関数化すると?って感じの前フリがあったのでは?
仮想関数エントリの数百〜数千くらい無視できるほど小さいと思う俺は贅沢すぎですか?
C++プログラマはみな無視します
継承多様による弊害は仮想関数テーブルの増大なんかよりも別にあると思うが
>984
「各インスタンスの仮想関数テーブルを増大」
つまり、クラスとインスタンスの区別の付かないくらい
著者が莫迦だといいたいんだね?
>>987
それはまた別の話。インターフェース継承なら、ふつー多重継承する
ものだし。

>>985
たとえエントリが 1 万個あったとしても、32bit マシンだと 40KB
程度でしょう。誤差、誤差。
>>941
boost のスマートポインタ系や bind, compose, mem_fn, call_traits,
それに文字列処理に関して format, regex あたりは仕事で使ってるけど。
さすがに lambda, mpl なんかは、使ってる処理系のバージョンが古い
ためもあって使ってない。
991デフォルトの名無しさん:03/08/10 13:37
C++のRTTIについて質問なのですが、これってC++は
どうやって実現しているのですか?
文字列で各インスタンスに埋め込んでいるのでしょうか?
992次スレ案内:03/08/10 13:42
993991:03/08/10 13:47
次スレに質問移動しますた。
ウメ〜
1000鳥合戦はいつ始まるの?
スレが立てられた時に始まっています
1000
998デフォルトの名無しさん:03/08/10 14:07
記念カキコ v(^-^*)
999GET!DVD:03/08/10 14:12
☆★ 新商品 ゾク・ゾク 入荷!! 急げ〜!! ☆★☆
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
☆★ 送料激安!  スピード発送!  商品豊富!   
★☆      http://www.get-dvd.com        
☆★ 激安DVDショップ 「GETDVDドットコム」 
★☆      http://www.get-dvd.com        
☆★ 今すぐアクセス Let’s Go!   急げ! 
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
1000
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。