我正在学习C++ 11,并对用户定义的文字感兴趣。 所以我决定玩一下。 有些语言有这样的语法: int n = 1000_000_000;
我试图模拟C++ 11此功能。 inline constexpr unsigned long long operator "" _000 (unsigned long long n)noexcept
{
return n * 1000;
}
我一直在研究C++ 11的一些新特性,并且对它们中的一些特别是用户定义的文字印象深刻。 这些允许您定义形式999_something的文字,其中something控制对999进行的操作以生成文字。所以没有更多的使用: #define MEG * 1024 * 1024
int ten_meg = 10 M;
我想这将是很好的实现大量下划线,像1_000_000_blah这将匹配的Perl的可
有什么办法可以获得这样的行为吗? // Some definition(s) of operator "" _my_str
// Some definition of function or macro MY_STR_LEN
using T1 = MY_STR_LEN("ape"_my_str);
// T1 is std::integral_constant<std::size_t, 3