0
我有三個.cpp
文件及其標題。無法訪問包含在另一個頭文件中的頭文件?
//a.cpp
#include "a.h"
#include "b.h"
void A::foo() {
C c;
c.bar();
}
//a.h
#include "b.h"
class A {
public:
void foo();
};
//b.h
#include "c.h"
//c.h
#pragma once
class C {
public:
void bar();
};
//c.cpp
#include "c.h"
void C::bar() {}
//other files are ignored
但是當我編譯他們,我得到這個錯誤:
a.cpp:(.text+0xb1): undefined reference to `C::bar()`
有我包括c.h
通過b.h
?爲什麼它不起作用?
是c.cpp得到編譯? –
你是如何編譯它的? – SuperSaiyan
對不起,我忘了清理一些舊的目標文件。我應該首先運行'make clean'......這確實是一個不合格的問題。 –