当前位置: 代码迷 >> QT开发 >> 为什么这个模板类编译出错啊解决办法
  详细解决方案

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

热度:297   发布时间:2016-04-25 05:13:23.0
为什么这个模板类编译出错啊
程序只有一个文件,包涵一个模板类,编译粗提示错误:
  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
  相关解决方案