2
我玩弄用户定义文字(与GCC 4.7)。整数值应该传递给浮点用户定义的文字吗?
double operator"" _lb(long double n)
{
return n * 0.453592; // convert pounds to kilos
}
传递时一个浮点字面也能正常工作(如42.0_lb
),但是当我试图通过一个整数文字(如42_lb
)我得到以下错误:
error: unable to find numeric literal operator 'operator"" _lb'
不应该我的_lb
的定义会导致参数与long double
之间的隐式转换(与常规函数一样)?
@Motti [N3337](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3337.pdf)也有我引用的文字。 (来自[wikipedia]的链接(http://en.wikipedia.org/wiki/C%2B%2B11))。 – Angew
谢谢,我现在看到它。 – Motti