У меня есть следующий код (на ideone.com):
template<class T>
class CMemoryPool
{
public:
CMemoryPool(int param1)
: stuff(param1)
{}
private:
T stuff;
};
template<class T>
class CList
{
public:
struct Entry
{
T data;
};
static CMemoryPool<Entry> s_pool;
};
template<class T>
CList<T>::CMemoryPool<CList<T>::Entry>::s_pool(1);
int main()
{
CList<int> list;
}
Кажется, я не могу получить инициализацию s_pool
вне класса для компиляции. Может ли кто-нибудь помочь мне понять, как это сделать? Примечание. Я использую только C++03.
typename
дляCList<T>::Entry
, но, к сожалению, это тоже не помогло :( ... - person πάντα ῥεῖ   schedule 28.03.2014