【发布时间】:2021-06-21 03:54:51
【问题描述】:
我有一个基本的#pragma 消息警告
#pragma message(__FILE__ "(" _CRT_STRINGIZE(__LINE__) ") : warning : T does not have an << operator.")
这是在 Sfinae 控制的过载测试中,用于检测
但是它缺少“本机”警告和错误提供的额外信息:
[ with T = int ]
还有额外的堆栈/实例化跟踪,让您可以准确确定是哪个函数调用导致了问题。
有没有办法让我的警告也显示这些额外有用的信息,因为我的警告甚至无法告诉用户是什么类型触发了警告,更不用说哪个代码/方法调用部分导致了警告。
__PRETTY_FUNCTION__ 例如在 #pragma 消息中不起作用,因为它是一个 const char[] 并且 #pragma 消息需要一个常量字符串,即“bla bla”。
【问题讨论】:
标签: c++ visual-studio warnings pragma