读书人

为什么这个模板类编译出错啊解决办法

发布时间: 2012-01-19 00:22:28 作者: rapoo

为什么这个模板类编译出错啊
程序只有一个文件,包涵一个模板类,编译粗提示错误:
main.cpp:17: error: expected ';' before 'myit'
我用的是QT Creator 2.3.1 MinGw for windows
源文件如下:

C/C++ code
//------------------------//------------------------ #include <QtCore/QCoreApplication>#include <map>template <class T>class MySetting{public:    void function();private:    T   m_data;};////////////////////////////////////////////////////////////////////////template <class T>void MySetting<T>::function(){    std::map<int, T*>::iterator  myit;   //编译提示出错  error: expected ';' before 'myit'}int main(int argc, char *argv[]){    QCoreApplication a(argc, argv);    return a.exec();}//----------------------------------


[解决办法]
typename std::map<int, T*>::iterator myit;
[解决办法]
前面加个 typename
[解决办法]
typename

读书人网 >QT开发

热点推荐