0
我向前声明模板外部和内部类如下模板类向前声明
template<class T>
class outer;
class inner;
刚过上述声明我已经定义为
namespace boost
{
namespace serialization
{
template<class Archive>
void serialize(Archive &ar, outer &var, ...) { }
}
}
外一个boost::serialization
声明是一个模板类因此需要指定模板参数。如果我试图这样做,如下所示
...
void serialize(... outer<T> &var ...) { }
...
这是一个错误,因为只允许一个模板声明。定义这种前瞻性声明的正确方法是什么?
如果我不是错了,你应该做的:模板<类文件>模板 void serialize(Archive&ar,外部&var,...){}。我不记得,但我想你也可以把模板放在一行:template –
Infested
2013-05-09 11:52:07
为什么你不能使用template? –
tmaric
2013-05-09 11:52:16
@ tomislav-maric我以为我需要分开模板声明;我认为他们是独一无二的,不应该混合。我会做你的建议。提出一个答案,我会投票和标记。 – Mushy 2013-05-09 14:52:15