我试图做folllowing: 类定义.h文件:模板规范问题
template<int Size>
class Sculptor
{
public:
Sculptor();
~Sculptor(void) ;
void Sculp(SculptData* sculpData);
void ToShape(Shape* shape);
int CalculateMesh();
unsigned char sculpture[Size][Size][Size];
}
类定义的cpp文件来塑造功能(所有其他人都一样):
template<int Size>
void Sculptor<Size>::ToShape(Shape* shape){}
使用:
Sculptor<16> sclupt;
Shape shape;
SculptData* data = CreateCircle();
sclupt.Sculp(data);
sclupt.CalculateMesh();
sclupt.ToShape(&shape);
我得到以下错误
你能告诉我问题的根源吗?
是这样的情况:http://www.parashift.com/c++-faq-lite/templates.html#faq-35.13? – Flexo
从cpp文件编辑添加的例子 –
准确地说 - 它可能在不同的cpp文件中,所以从不在输出中实例化。 – Flexo