gpt4 book ai didi

C++ 模板类继承另一个具有模板指定输入类型的模板类

转载 作者:可可西里 更新时间:2023-11-01 17:52:40 26 4
gpt4 key购买 nike

<分区>

Possible Duplicates:
GCC problem : using a member of a base class that depends on a template argument
Why does GCC need extra declarations in templates when VS does not?
Why doesn’t a derived template class have access to a base template class
iphone compiler inherited templated base classes with passed through type not being expanded in time (just look)

抱歉,标题令人困惑,这是我能想到的最好的。

这里有一些代码来说明我的问题...

基本模板类:

template<class T> class TestBase
{
public:
int someInt;
};


正在尝试使用另一个模板类对 TestBase 进行子类化...

这在编译时得到“someInt was not declared in this scope”:

template<class X> class TestSub : public TestBase<X>
{
void testf()
{
someInt = 0; //Error: "someInt was not declared in this scope"
}
};



二)这工作正常(不同之处在于我明确指定了 TestBase 的模板输入)

template<class X> class TestSub : public TestBase<string>
{
void testf()
{
someInt = 0;
}
};



为什么 (A) 中的 TestSub 没有像 (B) 中那样正确继承 someInt?

提前致谢。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com