-1

继承和模板的问题我的派生类无法识别 x ,它是我的基类中的成员变量。

 template <class type>
 class one
 {
 public:
 type getX();
 type x;
 };

 template <class type>
 type one<type>::getX()
 {
 return x;
 }



 template <class type>
 class two: public one <type>
 {
 public:
 type getX();
 };

 template <class type>
 type two<type>::getX()
 {
   return x;
 }
4

2 回答 2

1

由于two是一个模板,并且x不是两个的直接成员,因此您需要明确依赖关系。

一种方法是one<type>::x,另一种可以this->x

于 2013-07-25T19:44:58.630 回答
0

您必须使用“this->”来访问模板父类中的模板基类成员和函数。

返回这个->x;

于 2015-02-03T08:08:24.467 回答