2
我有下面的類結構:從非模板基類派生的模板類:無法訪問基類變量?
class Base {
public:
std::set<Index> openIndices;
Base() {};
};
template<typename lhs_t, typename rhs_t>
class Derived : public Base {
public:
lhs_t &lhs;
rhs_t &rhs;
Derived(lhs_t &_lhs, rhs_t &_rhs) :
Base(),
lhs(_lhs),
rhs(_rhs),
openIndices(std::set_symmetric_difference(lhs.openIndices, rhs.openIndices))
{
}
};
所以basicly從基類Base
來源的模板類Derived
。當訪問成員變量OB貝塞類我得到以下錯誤:
test.h:34:88: error: class ‘Derived<lhs_t, rhs_t>’ does not have any field named ‘openIndices’
我知道this question:我不能訪問的情況下,成員變量我的類是從模板類派生。但在我的情況下,我不是從模板類派生的,我仍然無法訪問成員變量。有誰能告訴我爲什麼?
Omg,是的,我應該知道這個!很顯然,我真的被代碼中的模板搞糊塗了。不管怎麼說,還是要謝謝你。 – Haatschii