C++相談室 part166 (569レス)
C++相談室 part166 http://mevius.5ch.net/test/read.cgi/tech/1745631298/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
491: デフォルトの名無しさん (ワッチョイ 06a1-6mIp) [sage] 2025/06/29(日) 13:14:06.51 ID:zQA4sk9y0 上のコードの >auto& st = x.refStruct(); // stはFooのprivateな型だがビルドが通る。 が識別子PrivateStructの可視性を無視してくれる理由がわからんぬ…… これ >PrivateStruct& st = x.refStruct(); と書いたら型の名前PrivateStructの可視性がprivateなのでもちろんエラーになる http://mevius.5ch.net/test/read.cgi/tech/1745631298/491
493: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7b32-T+w5) [sage] 2025/06/29(日) 13:37:38.54 ID:RnCZLFSE0 >>491 > 識別子PrivateStructの可視性を無視してくれる理由 識別子 PrivateStruct を使っていないから。 この場合は x.refStruct() という式から型を推論するので型名 (であるような識別子) の可視性は関係ない。 プライベートなデータメンバ m_st だってその参照を外へ持ち出してるだろ。 外で m_st という名前でアクセスできないが m_st に対応するオブジェクトへのアクセスは (アクセス経路があるなら) アクセス指定に左右されない。 同様に、プライベートに定義した型を型名ではアクセスできないが型を使えないわけではない。 http://mevius.5ch.net/test/read.cgi/tech/1745631298/493
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.029s