相关疑难解决方法(0)

为什么我必须通过this指针访问模板基类成员?

如果下面的类不是模板,我可以简单地xderived课堂上.但是,使用下面的代码,我必须使用this->x.为什么?

template <typename T>
class base {

protected:
    int x;
};

template <typename T>
class derived : public base<T> {

public:
    int f() { return this->x; }
};

int main() {
    derived<int> d;
    d.f();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ inheritance templates c++-faq

184
推荐指数
3
解决办法
2万
查看次数

C++中"using"关键字背后的逻辑是什么?

C++中"using"关键字背后的逻辑是什么?

它用于不同的情况,我试图找出是否所有这些都有共同点,并且有一个理由为什么使用"using"关键字.

using namespace std; // to import namespace in the current namespace
using T = int; // type alias
using SuperClass::X; // using super class methods in derived class
Run Code Online (Sandbox Code Playgroud)

c++ c++11

111
推荐指数
1
解决办法
8万
查看次数

标签 统计

c++ ×2

c++-faq ×1

c++11 ×1

inheritance ×1

templates ×1