我有以下
VS 15中的功能:
# define variable_min_value(_var) \
_Generic(_var, \
char: CHAR_MIN, \
unsigned char: (unsigned char)0, \
signed char: SCHAR_MIN, \
signed short: SHRT_MIN, \
unsigned short: (unsigned short)0, \
signed int: INT_MIN, \
unsigned int: 0u, \
signed long: LONG_MIN, \
unsigned long: 0ul, \
signed long long: LLONG_MIN, \
unsigned long long: 0ull)
#define TIME_T_MIN (variable_min_value((time_t)0))
输出:
'默认参数':无法从'初始化列表'转换为'std :: initializer_list'
这里有什么问题? 我甚至没有收到错误消息?非常感谢!
答案 0 :(得分:3)
我打赌你收到了这个错误
错误C2440:'默认参数':无法从'初始化列表'转换为'std :: initializer_list< std :: tuple< int,bool>>'
因为你没有包含
#include <tuple>
这可以说是 not-very-explicative 错误消息。确保包含所有其他所需的标题(例如<initializer_list>
)。