は私がのtypedefの束を持つ2つの基本クラスを持っているとします複数の継承の下で1つの基本クラスからすべてのtypedefを継承する方法はありますか?
struct X {
typedef int type1;
typedef float type2;
// A bunch of other typedefs.
};
struct Y {
typedef long type1;
typedef char type3;
// Some other typedefs.
};
struct Z : public X, public Y {
};
どのように私はZが手動で各タイプの競合を解決せずに、Xからすべてのtypedefを継承させたい指定するのですか? O(n)の代わりにこれを達成するためのO(1)コードを意味します。ここで、nは競合タイプの数です。また、メタプログラミングの場合、XとYの正確な型定義を知らないので、手動による解決の競合は不可能です。
単一継承の場合、自動的に基本クラスのtypedefが使用されるため、手動で指定する必要はありません。
必要なすべてのタイプをヘッダファイルに入れてみませんか? –