Compiler Error 2535 (bei Visual Studio.net 7.0)



  • Hallo zusammen

    ich habe ein Problem beim einfuegen einer Header Datei. Wenn ich sie kompilieren will dann kommt folgende Fehlermeldung:

    g:\Program Files\Microsoft Visual Studio .NET\Vc7\include\xmemory(87): error C2535: 'std::allocator<_Ty>::pointer std::allocator<_Ty>::address(std::allocator<_Ty>::reference) const' : member function already defined or declared
    with
    [
    _Ty=const std::_Tree<std::_Tmap_traits<const LineIndex,int,LineIndexComparator,std::allocator<std::pair<const LineIndex,int>>,false>>::key_type
    ]

    Woran liegt das? Ich habe bereits herausgefunden dass er meine map<> Deklaration nicht mag. Aber wieso? Fehlt da noch irgendwo ein include oder sowas? Meine h-Datei sieht so aus:

    #pragma once

    #include <math.h>
    #include <map>
    #include <list>

    #include "Func.h"
    #include "NNSearch.h"
    #include "SurfaceCubeHelpers.h"

    using namespace std;

    class SurfaceCubes
    {
    Func * func;
    int steps;
    double minxyz[3];
    double maxxyz[3];
    int maxind[3];
    double eps;
    Surface * surf;

    int count_function_evals;
    int count_function_lookups;
    int count_cubesurf_tests;
    int count_cubesurf_lookups;
    int count_vertex_lookups;

    map<const Index,double,IndexComparator> evalMap;
    map<const Index,int,IndexComparator> seenBoxes;
    map<const LineIndex,int,LineIndexComparator> vertexNumberMap;

    NNSearch * checkboundary;
    double boundary_distance;
    public:
    SurfaceCubes(Func * func, double * minxyz, double * maxxyz, double eps,
    NNSearch * checkboundary, double boundary_distance);
    ~SurfaceCubes(void);
    void march(double *, int, Surface *);

    private:
    void key2Pos(const Index&, double);
    bool keyValid(const Index&);
    double eval(const Index&);
    double eval(int, int, int);
    bool isBoxSeen(const Index&);
    double getOffset(double, double);
    void doCubeSurfacing(const Index&,double);
    int RegisterVertex(Index, double, Index, double);
    bool testBoxForSurface(const Index&);
    void addNeighbours(const Index&, list<Index>& );

    };

    Waere super wenn mir jemand weiterhelfen koennte.

    Viele Gruesse
    Samo


Anmelden zum Antworten