每次我打电话给
force
函数我得到一个
undefined reference; collect2: error: ld returned 1 exit status
.
这是的声明
武力
上面的函数
main
中的函数
main.cpp
:
void force(Particle(&a_p)[SIZE], void(*force_func)(Particle&, Particle&));
这是
主要的
中的函数
main.cpp
:
int main() {
Particle a_particle[SIZE];
for (int i = 0; i++ < iterations;) {
force(a_particle, float3::graviton);
force(a_particle, float3::photon);
}
return 0;
}
以下是的定义
武力
下面的函数
主要的
中的函数
main.cpp
:
void force(Particle(&a_p)[SIZE], void (*force_func)(const Particle&, const Particle&)) {
for (unsigned int i = 0 ; i++ < SIZE - 1;)
for (unsigned int j = i + 1; j++ < SIZE; ) {
force_func(a_p[i], a_p[j]);
}
}
SIZE
是用于的大小的定义
a_particle
数组及其用途(Mine设置为10)。
二者都
float3
和
Particle
是在单独的头文件中声明的结构。
我试着将函数指针分别初始化为变量,并将它们传递到函数上,但也没有成功。有人能帮我找出为什么我仍然会出现这个错误吗?
如果我遗漏了任何必要的信息,我很乐意提供更多信息。