Допустим, у нас есть класс, MyParent:
class MyParent
{
public:
template<namespace T>
MyParent()
{
T* Something;
}
};
И производный класс, который использует этот конструктор:
class MyDerived : public MyParent
{
public:
MyDerived()
: MyParent<int>()
{
}
};
Тогда я получаю ошибку компиляции, потому что есть двусмысленность. Компилятор считает, что int является аргументом шаблона для класса, а не для конструктора.
Как мне указать, что я хочу, чтобы int был аргументом для конструктора?