我在创建一个 C 函数作为回调传递给另一个库的情况下遇到问题,因此它使用 CALLBACK 表示法。这是使用VS2015。
无效回调回调(无效)
我正在使用 unity 和 cmock 对一些代码进行单元测试,并且我正在尝试模拟回调..
因此,当 cmock 脚本创建所有模拟(模拟头文件)时,它会创建如下行:
void TheCallback_CMockIgnoreAndReturn(UNITY_LINE_TYPE cmock_line, VOID CALLBACK cmock_to_return);
(注意那里的CALLBACK这个词)
当我编译时,我会收到如下警告和错误:
警告 C4229:使用不合时宜:忽略数据的修饰符
错误 C2182:“cmock_to_return”:非法使用“void”类型
这似乎与卡在中间的 CALLBACK 有关。
关于如何将其声明为 CALLBACK 并且没有 VS2015 抱怨忽略并返回模拟的函数原型中的类型的任何想法?
我想知道在单元测试时是否需要以某种方式取消定义 CALLBACK,我什至不确定我是否可以
任何想法都会很棒..谢谢。