c – 将`nullptr`分配给`bool`类型.哪个编译器正确?
我有一小段代码将nullptr分配给bool类型.
#include <iostream> int main() { bool b = nullptr; std::cout << b; } 在clang 3.8.0工作正常.它给出了输出0. Clang Demo 但是g 5.4.0给出了一个错误: source_file.cpp: In function ‘int main()’: source_file.cpp:5:18: error: converting to ‘bool’ from ‘std::nullptr_t’ requires direct-initialization [-fpermissive] bool b = nullptr; 哪个编译器正确? 解决方法
来自C标准(4.12布尔转换)
所以这个宣言 bool b( nullptr ); 这是有效的 bool b = nullptr; 是错的. 我自己在isocpp已经指出了这个问题 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ruby-on-rails – Rails 4.0.3使用asset_sync生成不正确的资
- 我是否需要在ajax请求和接收该请求的php之间编码/解码查询参
- 分析开源oschina客户端(二)
- ruby-on-rails – Heroku:PG ::错误:错误:关系权限被拒绝
- c – avcodec YUV到RGB
- Conversion of Oracle TO_CHAR(datetime) with format stri
- 正则表达式进阶
- 永久设置“rvm use ruby??-1.9.3”?
- 控制器 – 如何在Rails 3.2中正确使用Flash消息
- 《Cocos2d-x游戏开发实战精解》学习笔记1--在Cocos2d中显示