[過去ログ] C/C++ゲーム製作総合スレッド Part1 (1001レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
944: 名前は開発中のものです。 [sage] 2012/10/20(土) 06:41:01.04 ID:s/RZO/oy(1) AAS
>>943
Cならば->は単純なポインタの足し算だからコンパイル時に決定されるけど、
C++だと->はそうではないことがあるってことかね?

典型的な offsetof の記述はこうなので
#define offsetof(type, mem) ((size_t) \
((char *)&((type *)0)->mem - (char *)(type *)0))

VCで仮想継承 を持つときには、アロー演算子が仮想関数テーブルを見にいくけど、
この時 Windowsのユーザモードの場合は(ほとんどの場合)読み込み禁止ページを見にいって、
Access violationを発生させる。保護機構が無い環境だと、アドレス 0に仮想関数テーブル分
のオフセットを足したアドレスを仮想関数テーブルだとおもって、多分でたらめな値を返す。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.030s