当前位置: 技术问答>linux和unix
我在win下写的模板,在linux下就编译通不过了,这是什么问题?
来源: 互联网 发布时间:2015-11-29
本文导语: 模板如下: #include using namespace std; template class HashLk { ... public: virtual void Erase(const Ty& d) { list::iterator it=Find(d); // 就是这一句出错,如果把Ty换成int就没问题,但这就不是模板了。 // ...
模板如下:
#include
using namespace std;
template
class HashLk
{
...
public:
virtual void Erase(const Ty& d)
{
list::iterator it=Find(d); // 就是这一句出错,如果把Ty换成int就没问题,但这就不是模板了。
// 我觉得我这样写是符合标准c++规范的,在vc7下能编译通过,并且程序运行结果也对,用g++ 4.1.0下就不行
}
};
请问高手,我这个到底是什么问题?
急~
#include
using namespace std;
template
class HashLk
{
...
public:
virtual void Erase(const Ty& d)
{
list::iterator it=Find(d); // 就是这一句出错,如果把Ty换成int就没问题,但这就不是模板了。
// 我觉得我这样写是符合标准c++规范的,在vc7下能编译通过,并且程序运行结果也对,用g++ 4.1.0下就不行
}
};
请问高手,我这个到底是什么问题?
急~
|
QValueList::Iterator it;
这是我的代码中的一句
你的应该是没问题的
看看Ty的定义
这是我的代码中的一句
你的应该是没问题的
看看Ty的定义