我正在使用 mingw-w64。我包括strsafe.h
并收到以下警告:
warning: inline function 'HRESULT StringCchPrintfA(STRSAFE_LPSTR, size_t, STRS
AFE_LPCSTR, ...)' used but never defined [enabled by default]
我使用的唯一标志标志是-Wall -DDEBUG -g
. 我知道你必须在同一个标题中定义内联函数,我看了看,strsafe.h
我清楚地可以StringCchPrintfA
在标题中看到,所以我不知道为什么它会给我这个错误。此外,如果您想自己查看标题,这里是strsafe.h 的链接。
编辑:
我在网上找到了以下片段(如果有人可以提供更多信息,请告诉我,评论中想说什么?):
// Work around lack of strsafe library in mingw-w64, do let their
// strsafe.h provide inlines of StringCchVPrintfA etc, avoid linking
// errors in a debug build.
#ifdef __CRT__NO_INLINE
#undef __CRT__NO_INLINE
#define DID_UNDEFINE__CRT__NO_INLINE
#endif
extern "C" {
#endif
#include <strsafe.h>
#ifdef __MINGW32__
}
#ifdef DID_UNDEFINE__CRT__NO_INLINE
#define __CRT__NO_INLINE
#endif
#endif