1
我已经有了一个模板类:如何定义模板类的模板
template <class T>
class A
{
...
protected:
T m_value;
}
,我想TE让使用这个类为载体的模板:
template <class T>
class B:public A<std::vector<T>> //no need of space between >> (c++11)
{
void testSize()
{
if(m_value.size() > ...)
{
...
}
}
}
编译器抱怨about:error:'m_value'在这个范围内没有声明
有没有一种方法可以做到这一点或让我为每个std :: vector类型直接使用A类重新编码这个函数?
感谢,
编辑:
我tryed这一点:
template <class T>
class B:public A<std::vector<T>> //no need of space between >> (c++11)
{
void testSize()
{
if(m_value.size() > ...)
{
...
}
}
std::vector<T> m_value;
}
编译器不抱怨了,但确实堪称一流的m_value函数的参考类的m_value B'
非常感谢!很简单,我很惭愧! – user3541297