c++ - 保留名称和用户文字
问题描述
C++ 标准在所有范围内保留以下划线后跟大写字母开头的名称。
这是否适用于用户文字运算符?
例如
int _MyInt; // reserved, violation
template < char... >
auto operator "" _MyInt ( ); // reserved???
解决方案
不,它允许使用下划线后跟大写字母(否则为保留标识符)。
在支持上述内容的标准中,我只找到了一个示例,而不是正式段落:
double operator""_Bq(long double); // OK: does not use the reserved identifier _Bq
double operator"" _Bq(long double); // uses the reserved identifier _Bq
因此,只要您之间不留空格""
,_Ud
就可以了-根据示例。
推荐阅读
- excel - MSXML2.XMLHTTP 可以与 Chrome 一起使用吗
- java - 为什么上下文不会从 (Reactor) Mono 传播到 (RxJava) Single?
- c# - 如何使用运算符'??' 关于浮动类型
- tensorflow - Tensorflow Hub 与 Tensorflow 官方模型有什么区别?
- laravel - 登录后 Laravel 基本身份验证重定向到 HTTPS 路由
- gitlab - Gitlab-ci 中的服务以错误“主机类型网络不能与链接一起使用”开始
- css - 不同路线的404页面不起作用
- react-native - 在 React 中显示 json 嵌套对象
- python - 如何使用 Google Analytics API 显示特定的页面浏览量?
- node.js - 如何从 nodejs 中的打字稿文件中读取对象?