C++相談室 part108
■ このスレッドは過去ログ倉庫に格納されています
0014デフォルトの名無しさん
2013/12/10(火) 21:51:34.56...の付いた式(パターン)について、型とオブジェクトを1組ずつ展開するだけでは?
つまり
Mixins = {Mixin1, Mixin2}
mixins = {m1, m2}
で、基底クラスのほうは
class X : Mixins
-> class X : Mixins[0], Mixins[1], ...
-> class X : Mixin1, Mixin2
メンバー初期化子リストのほうは
: Mixins(mixins)
-> : Mixins[0](mixins[0]), Mixins[1](mixins[1]), ...
-> : Mixin1(m1), Mixin2(m2)
ただし、場所によって何がパターンになるかは違う(14.5.3p4)
・関数パラメータパック→...を除いた関数パラメータ
・テンプレートパラメータ→関数パラメータまたは対応する型パラメータ
・初期化子リスト→初期化子
・基底クラスのリスト→基底クラス
・メンバー初期化子リスト→メンバー初期化子
・テンプレート引数リスト→テンプレート引数
・例外指定→type-id
・属性リスト→属性
・アライメント指定子→...を除いたアライメント指定子
・λ式のキャプチャリスト→キャプチャ
・sizeof...展開→識別子
覚えられるかっつうの・・・
■ このスレッドは過去ログ倉庫に格納されています