3DFace类的C3DFace.h文件如下:
class C3DFace  
{
public:
C3DFace();
virtual ~C3DFace();

// data members
public:
C3DFace(CString path);
.......
}C3DFace.cpp文件如下:
C3DFace::C3DFace(CString path)
{
m_vertices = NULL;
m_textures = NULL;
m_triangles = NULL;
m_header.TraCount = m_header.VerCount = 0;
m_strFileName = "";
m_pTrianNum = NULL;

ReadData(path);
}
报错:
D:\C++\program\3DFace\3DFace.cpp(295) : error C2511: 'C3DFace::C3DFace' : overloaded member function 'void (class CString)' not found in 'C3DFace'
        d:\c++\3dfa\3df\3dface.h(16) : see declaration of 'C3DFace'
Error executing cl.exe.3DF.exe - 1 error(s), 0 warning(s)

解决方案 »

  1.   

    C3DFace();  这个定义了吗?
      

  2.   

    #include <afx.h> 或者 <atlstring.h>
      

  3.   

    dubiousway,你好!你说的定义是以下这个吗?
    C3DFace::C3DFace()
    {
    m_vertices = NULL;
    m_textures = NULL;
    m_triangles = NULL;
    m_header.TraCount = m_header.VerCount = 0;
    m_strFileName = "";
    m_pTrianNum = NULL;}
      

  4.   


    你这个不是 C3DFace::C3DFace(CString path)  的吗?
    没参数的那个定义呢?
      

  5.   

    头文件中加一个C3DFace(CString path);
      

  6.   

    C3DFace()只有声明,没有实现!
    头文件中的
    C3DFace(); 改为 C3DFace(){};
      

  7.   


    C3DFace.cpp文件中:
    C3DFace::C3DFace()
    {
    m_vertices = NULL;
    m_textures = NULL;
    m_triangles = NULL;
    m_header.TraCount = m_header.VerCount = 0;
    m_strFileName = "";
    m_pTrianNum = NULL;}C3DFace::C3DFace(CString path)
    {
    m_vertices = NULL;
    m_textures = NULL;
    m_triangles = NULL;
    m_header.TraCount = m_header.VerCount = 0;
    m_strFileName = "";
    m_pTrianNum = NULL;

    ReadData(path);
    }