考虑某些库定义的内容:
namespace NS {
constexpr atype operator ""_suffix(const char*, std::size_t);
};
如果我不喜欢_suffix
这个名字(也许与其他库冲突,或者与我的命名约定形成鲜明对比):我可以“重命名”操作符吗?
using _myalias = NS::operator ""_suffix`; // syntax error
using _myalias = NS::""_suffix`; // syntax error
using _myalias = NS::_suffix`; // undefined (`operator ""` is part of its name)
constexpr decltype(auto) operator ""_myalias(const char *str, std::size_t len)
{
return NS::operator ""_suffix(str, len); // very verbose, but it works
}
那么,是否有一种简单的语法为用户定义的文字定义别名?