C++调试时持续出现undefined reference报错该如何修复?
报错修复方案
你遇到的undefined reference属于链接阶段报错,根因是编译时未将Account.cpp纳入编译链接流程,Account类中声明的非内联成员函数(set_name、get_name、deposit、withdraw)找不到对应的实现定义,所以链接器抛出该错误,你的代码本身没有语法问题。
对应修复方法
- 命令行直接编译场景
不要仅执行单文件编译命令,需要将Account.cpp一并加入编译指令:
编译完成后执行生成的可执行文件即可:g++ main.cpp Account.cpp -o account_demo# Linux/macOS 运行指令 ./account_demo # Windows 运行指令 account_demo.exe - IDE(CLion、Visual Studio、Dev-C++等)使用场景
确认你已经将Account.cpp添加到项目的源文件列表中,仅引入Account.hpp头文件不会触发IDE编译对应的.cpp实现文件。 - Makefile/CMake等构建工具管理场景
检查构建配置中的编译源文件列表,确保Account.cpp已经被加入到待编译的源文件清单中。
内容的提问来源于stack exchange,提问作者zeNnG
相关产品推荐
相关产品推荐

