我可以使用类模板返回类型的函数吗?

问题描述:

只想问简单的问题给你的职业! 我实现模板类,如下面的代码:我可以使用类模板返回类型的函数吗?

template <typename T> 
class Matrix { ... }; 

,我试图使用具有返回类型为类模板功能。

Matrix<double> get_some_matrix(int param1,int param2) {...}; 

不幸的是,编译器生成如下错误消息:Error C2143:missing';' '<'

任何人都可以告诉我或猜测是什么问题?

我真的很感谢你的帮助,非常感谢你!

+0

在您的'get_some_matrix'函数之前发布代码。在'Matrix'定义之后,你可能会错过';'。 – 2013-03-13 15:25:19

+0

如果这是紧接在函数之前的定义,那么你需要用'};'而不是'}来完成。 – WhozCraig 2013-03-13 15:26:56

+0

你刚刚在那个函数定义之前有什么? – aschepler 2013-03-14 03:43:47

template <typename T> 
class Matrix { ... } //missing ; at end of class declaration. 

应该是:

template <typename T> 
class Matrix { ... }; // note ; 
+0

对不起。我已经把;到课堂的宣言,但我在帖子中想念它。 – gmkim90 2013-03-14 03:33:12

+0

我认为错误的根源不在于;在课堂结束时宣布。你认为其他什么是错误的根源吗? – gmkim90 2013-03-14 03:34:10

如果这是你的确切声明,你缺少类声明的右括号后的分号。

+0

谢谢!但正如我在上面的回答中所评论的那样,你认为还有什么其他的错误来源? – gmkim90 2013-03-14 03:35:06

+0

不是在您发布的代码中,但我想有很多您没有发布的代码。也许你可以完成你的开始帖子。 – nvoigt 2013-03-14 05:47:50