看看这个由于包含关系过于复杂而编译出错的有关问题吧
看看这个由于包含关系过于复杂而编译出错的问题吧
------解决方案--------------------
你没定义base的构造函数而已, 链接时找不到定义罢了.
- C/C++ code
/////////////////////main.cpp//////////////// int main(int argc, char **argv) { return 1; }
- C/C++ code
/////////////////////base.h//////////////// #pragma once class base { protected: base(); };
- C/C++ code
/////////////////////curve.h//////////////// #pragma once #include "base.h" class curve : public base { protected: curve(); };
- C/C++ code
/////////////////////curveCollection.h//////////////// #pragma once #include "base.h" class curveCollection : public base { protected: curveCollection(); };
- C/C++ code
/////////////////////curveCollection.cpp//////////////// #include "curvecollection.h" #include "curve.h" curveCollection::curveCollection() // 此处报错 undefined reference to `base::base() {}
------解决方案--------------------
你没定义base的构造函数而已, 链接时找不到定义罢了.