Multiple access

  • 多重継承によって、基底クラスの単一の名前に複数の継承経路からアクセスする場合、アクセス権のもっとも緩いものが考慮される
  • これで救われた。DSEL(言語内言語)の設計では思わぬ文法が重要になる


[]class[] []W[] { []public[]: []void[] []f[](); };
[]class[] []A[] : []private[] []virtual[] []W[] { };
[]class[] []B[] : []public[] []virtual[] []W[] { };
[]class[] []C[] : []public[] []A[], []public[] []B[] {
[]void[] []f[]() { []W[]::[]f[](); } []// OK[]
};