C + + 中未定义的引用/未解析的外部符号错误是什么?
顾名思义,您声明的符号不是您定义的。由于许多情况,可能会发生这种情况。让我们看看其中的三个-
您忘记定义声明的名称。例如,您在文件中声明了一个函数并在某处使用了它。但是您没有提供其定义。代码-
#include<iostream>
void foo();
int main() {
foo(); //声明但未定义
}您已定义它,但未使用限定名称。假设您使用方法创建了一个类并定义了该方法,但是忘记了使用作用域解析将该功能链接到该定义并在某处使用了该功能。例如,
#include<iostream>
class A {
void foo();
};
void foo() { } // should have used A::foo
int main() {
A a;
a.foo(); // Not defined!
}您没有以不正确的顺序包含依赖性。链接器尝试按您指定的顺序链接到它。因此,如果在定义之前使用方法,则可能会出现此错误。
热门推荐
10 医院探望朋友祝福语简短
11 毕业祝福语简短女朋友
12 春节虎年爸妈祝福语简短
13 儿童毕业祝福语 简短6
14 开工仪式横幅祝福语简短
15 孩子日常祝福语大全简短
16 清晨寄语诗句祝福语简短
17 结婚送亲认亲祝福语简短
18 虎年喝酒拜年祝福语简短