c - 我得到一个“错误:重新定义”符号,即使我在文件前面使用了相同的语法,
问题描述
我正在为单元测试创建一个函数存根(用于函数 foo_print_stats()),并编写了以下代码:
static void my_foo_stats(foo_fs_t * const fsys) {
return;
}
#undef foo_print_stats
#define foo_print_stats my_foo_stats
我不断收到错误“my_foo_stats 的重新定义”。我尝试将名称更改为其他名称,但无济于事。my_foo_stats 的参数与传递给 foo_print_stats 的参数完全相同。我很困惑,因为我在同一个文件中多次使用完全相同的语法并且它都有效。
解决方案
意识到最初定义函数的文件被包含在我试图重新定义它的下面。感谢@Tom Karzes 的建议
推荐阅读
- c# - 为什么我不能在 C# 的方法声明中填充数组?
- javascript - Javascript 运行不正常
- python-3.x - 来自字典数据框的数据框
- google-apps-script - 如何保护谷歌表中每个特定用户的范围?
- text - TextNoteType text_size 最小值
- amazon-web-services - 如何通过 AWS CLI 在您的 S3 存储桶上禁用 MFA 删除?
- google-cloud-platform - google_project_services.default:更新服务时出错:googleapi
- react-native - React Native Linking Promise 解决了拒绝没有被调用
- jquery - 在 JQuery 中将 HTML 行转换为名称值对
- c++ - Xerces-C 增加内存使用量