0
template <typename T, unsigned D>
class Matrix
{
public:
T Determinant(void) const;
T m[D][D];
};
template <typename T>
T Matrix<T, 2>::Determinant(void) const
{
return m[0][0] * m[1][1] - m[1][0] * m[0][1];
}
你好,论坛。 我有这个代码,但我得到的错误:模板部分特化
1>c:\dropbox\projects\math\matrix.h(319): error C3860: template argument list following class template name must list parameters in the order used in template parameter list
1>c:\dropbox\projects\math\matrix.h(319): error C2976: 'Math::Matrix<T,D>' : too few template arguments
不知道什么是错的。请帮忙。
我相信你只能专门研究整个班级,而不是个人功能。 – Adam
[“部分模板特化”中的“不完整类型的无效使用”错误的可能的重复](http://stackoverflow.com/questions/165101/invalid-use-of-incomplete-type-error-with-partial-template-specialization ) –
你可以做的是使'决定因素'非会员(可能是朋友)和*超载*它。 –