gpt4 book ai didi

c++ - 我可以使用 if (pointer) 而不是 if (pointer != NULL) 吗?

转载 作者:太空宇宙 更新时间:2023-11-04 12:45:07 25 4
gpt4 key购买 nike

通过简单地编写 if(pointer) 来检查指向不为 NULL 的指针是否安全,或者我是否必须使用 if(pointer != NULL )?

最佳答案

你可以;空指针被隐式转换为 bool 值 false,而非空指针被转换为 true。来自 C++11 标准,关于 bool 转换的部分:

A prvalue of arithmetic, unscoped enumeration, pointer, or pointer to member type can be converted to a prvalue of type bool. A zero value, null pointer value, or null member pointer value is converted to false; any other value is converted to true . A prvalue of type std::nullptr_t can be converted to a prvalue of type bool ; the resulting value is false .

关于c++ - 我可以使用 if (pointer) 而不是 if (pointer != NULL) 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52047219/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com