尝试构建一个c ++项目,我得到一个陷阱:6在编译时。我必须对内存分配做错事。我的代码有问题吗?
//Dependency.h
namespace whatever{
class Dependency {
public:
Dependency(std::function<void ()> const & func);
private:
std::function<void ()> const call_back;
};
Dependency::Dependency(std::function<void ()> const & func){
call_back = func;
}
extern Dependency * current;
extern int counter;
}
这是.cpp文件
#include "Dependence.h"
namespace whatever {
Dependency * current;
int counter = 1;
}
我尝试删除指向计数器,但这没有做任何事情。 这是错误消息
*** [src/Dependence.o] Abort trap: 6