sos!!!vc.net编译问题 在线等,急,解决就给分!!!
我用的是vc.net 2003
以前写的程序在bcbx下对的,在vc.net 2003下出现以下错误。。。求解 !!!
//////////////////////////////
// main.cpp
#include <iostream>
#include <iterator>
#include <list>
#include "d_search.h"
using std::cout;
using std::endl;
using std::list;
int main()
{
int arr[] = { 2, 5, 2, 15, 10, 3, 5, 5 };
int arrSize = sizeof(arr)/sizeof(int);
list<int> intList(arr, arr + arrSize);
list<int>::iterator result;
result = seqSearch<int>(intList.begin(), intList.end(), 15);
if (result != intList.end())
{
cout << "found, changed into 55\n";
*result = 55;
}
return 0;
}
/////////////////////
//d_search.h
/////////////////////
#ifndef d_search_h
#define d_search_h
#include <iterator>
#include <list>
template <typename T>
std::list<T>::iterator seqSearch(std::list<T>::iterator first, std::list<T>::iterator last, const T& target)
{
std::list<T>::iterator iter = first;
while (iter != last &&(*iter != target))
++iter;
return iter;
}
#endif
/////////////////////////
------ 已启动生成: 项目: testmsvc1, 配置: Debug Win32 ------
正在编译...
main1.cpp
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : warning C4346: “std::list<_Ty>::iterator” : 依赖名称不是类型
用“typename”为前缀来表示类型
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : error C2146: 语法错误 : 缺少“;”(在标识符“seqSearch”的前面)
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : error C2501: “std::list<_Ty>::iterator” : 缺少存储类或类型说明符
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : error C2065: “T” : 未声明的标识符
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : error C2955: “std::list” : 使用类模板需要模板参数列表
f:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\list(966) : 参见“std::list”的声明
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : error C3861: “T”: 即使使用参数相关的查找,也未找到标识符
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : error C2955: “std::list” : 使用类模板需要模板参数列表
f:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\list(966) : 参见“std::list”的声明
d:\Cpp sources\ELSE\testmsvc1\d_search.h(9) : error C2143: 语法错误 : 缺少“,”(在“&”的前面)
d:\Cpp sources\ELSE\testmsvc1\main1.cpp(16) : fatal error C1903: 无法从以前的错误中恢复;正在停止编译
生成日志保存在“file://d:\Cpp sources\Else\testmsvc1\Debug\BuildLog.htm”中
testmsvc1 - 8 错误,1 警告
---------------------- 完成 ---------------------
生成: 0 已成功, 1 已失败, 0 已跳过