考虑:
struct str {};
str operator"" _X(long double d) {
return str();
}
Run Code Online (Sandbox Code Playgroud)
用g ++ 4.7.2 Wall std = c ++ 11编译好
但现在如果我给双倍:
str operator"" _X(double d) {
return str();
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息:main.cpp | 3 | error:'str operator""_ X(double)'具有无效的参数列表
问题是什么 ?这与"不可能重新定义内置文字后缀的含义"(Stroustrup FAQ)有关吗?你能想到一个解决方法吗?