#include <iostream>
#include <algorithm>
using namespace std;
class point
{
double m_x;
double m_y;
};
bool cmp(const point &lhs, const point &rhs)
{
return lhs.m_x < rhs.m_x;
}
point a[100];
int main()
{
sort(a, a + 100, cmp);
return 0;
}
错误信息
1>------ 已启动生成: 项目: helloworld, 配置: Debug Win32 ------
1>正在编译...
1>test.cpp
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(572) : error C2039: 'iterator_category' : is not a member of 'Point'
1> .\test.cpp(7) : see declaration of 'Point'
1> .\test.cpp(36) : see reference to class template instantiation 'std::iterator_traits<_Iter>' being compiled
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(572) : error C2146: syntax error : missing ';' before identifier 'iterator_category'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(572) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(572) : error C2602: 'std::iterator_traits<_Iter>::iterator_category' is not a member of a base class of 'std::iterator_traits<_Iter>'
1> with
1> [
1> _Iter=Point
1> ]
1> C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(572) : see declaration of 'std::iterator_traits<_Iter>::iterator_category'
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(572) : error C2868: 'std::iterator_traits<_Iter>::iterator_category' : illegal syntax for using-declaration; expected qualified-name
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(573) : error C2039: 'value_type' : is not a member of 'Point'
1> .\test.cpp(7) : see declaration of 'Point'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(573) : error C2146: syntax error : missing ';' before identifier 'value_type'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(573) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(573) : error C2602: 'std::iterator_traits<_Iter>::value_type' is not a member of a base class of 'std::iterator_traits<_Iter>'
1> with
1> [
1> _Iter=Point
1> ]
1> C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(573) : see declaration of 'std::iterator_traits<_Iter>::value_type'
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(573) : error C2868: 'std::iterator_traits<_Iter>::value_type' : illegal syntax for using-declaration; expected qualified-name
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(574) : error C2039: 'difference_type' : is not a member of 'Point'
1> .\test.cpp(7) : see declaration of 'Point'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(574) : error C2146: syntax error : missing ';' before identifier 'difference_type'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(574) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(574) : error C2602: 'std::iterator_traits<_Iter>::difference_type' is not a member of a base class of 'std::iterator_traits<_Iter>'
1> with
1> [
1> _Iter=Point
1> ]
1> C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(574) : see declaration of 'std::iterator_traits<_Iter>::difference_type'
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(574) : error C2868: 'std::iterator_traits<_Iter>::difference_type' : illegal syntax for using-declaration; expected qualified-name
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(576) : error C2039: 'pointer' : is not a member of 'Point'
1> .\test.cpp(7) : see declaration of 'Point'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(576) : error C2146: syntax error : missing ';' before identifier 'pointer'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(576) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(576) : error C2602: 'std::iterator_traits<_Iter>::pointer' is not a member of a base class of 'std::iterator_traits<_Iter>'
1> with
1> [
1> _Iter=Point
1> ]
1> C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(576) : see declaration of 'std::iterator_traits<_Iter>::pointer'
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(576) : error C2868: 'std::iterator_traits<_Iter>::pointer' : illegal syntax for using-declaration; expected qualified-name
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(577) : error C2039: 'reference' : is not a member of 'Point'
1> .\test.cpp(7) : see declaration of 'Point'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(577) : error C2146: syntax error : missing ';' before identifier 'reference'
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(577) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(577) : error C2602: 'std::iterator_traits<_Iter>::reference' is not a member of a base class of 'std::iterator_traits<_Iter>'
1> with
1> [
1> _Iter=Point
1> ]
1> C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(577) : see declaration of 'std::iterator_traits<_Iter>::reference'
1> with
1> [
1> _Iter=Point
1> ]
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xutility(577) : error C2868: 'std::iterator_traits<_Iter>::reference' : illegal syntax for using-declaration; expected qualified-name
1> with
1> [
1> _Iter=Point
1> ]
1>abc.cpp
1>.\abc.cpp(13) : error C2248: 'point::m_x' : cannot access private member declared in class 'point'
1> .\abc.cpp(7) : see declaration of 'point::m_x'
1> .\abc.cpp(6) : see declaration of 'point'
1>.\abc.cpp(13) : error C2248: 'point::m_x' : cannot access private member declared in class 'point'
1> .\abc.cpp(7) : see declaration of 'point::m_x'
1> .\abc.cpp(6) : see declaration of 'point'
1>Generating Code...
1>生成日志保存在“file://d:\Backup\我的文档\Visual Studio 2005\Projects\helloworld\helloworld\Debug\BuildLog.htm”
1>helloworld - 27 个错误,0 个警告
========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ==========