Compilerfehler nur in .NET?
-
Hallo!
Die folgenden Klassenmethoden wurden deklariert:public: // find. size_type find(const _Self& __s, size_type __pos = 0) const { return find(__s._M_start, __pos, __s.size()); } size_type find(const _CharT* __s, size_type __pos = 0) const { _STLP_FIX_LITERAL_BUG(__s) return find(__s, __pos, _Traits::length(__s)); } size_type find(const _CharT* __s, size_type __pos, size_type __n) const; size_type find(_CharT __c, size_type __pos = 0) const;Diese Methoden sind folgendermaßen definiert:
template <class _CharT, class _Traits, class _Alloc> __size_type__ basic_string<_CharT,_Traits,_Alloc> ::find(const _CharT* __s, size_type __pos, size_type __n) const { if (__pos + __n > size()) return npos; else { const const_pointer __result = _STLP_STD::search((const _CharT*)this->_M_start + __pos, (const _CharT*)this->_M_finish, __s, __s + __n, _Eq_traits<_Traits>()); return __result != this->_M_finish ? __result - this->_M_start : npos; } } template <class _CharT, class _Traits, class _Alloc> __size_type__ basic_string<_CharT,_Traits,_Alloc> ::find(_CharT __c, size_type __pos) const { if (__pos >= size()) return npos; else { const const_pointer __result = _STLP_STD::find_if((const _CharT*)this->_M_start + __pos, (const _CharT*)this->_M_finish, _Eq_char_bound<_Traits>(__c)); return __result != this->_M_finish ? __result - this->_M_start : npos; } }In Visual Studio 6.0 läuft der Compiler durch und in .Net gibt es die folgende Fehlermeldung:
error C2059: Syntaxfehler: ')'
in der Zeilebasic_string<_CharT,_Traits,_Alloc> ::find(_CharT __c, size_type __pos) constWoran kann es liegen, dass der Compiler von .NET diesen Fehler ausgibt?
Mit besten Grüßen, Lothar.
-
Irgendein Include-Pfad anders gesetzt, so daß der falsche Header mit einer notwendigen Definition reingezogen wird?