gpt4 book ai didi

c++ - 未初始化 auto_ptr 时 get() 是否可靠?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:08:02 25 4
gpt4 key购买 nike

考虑以下代码:

std::auto_ptr<std::string> p;

if (p.get() == 0) {
...
}

get() 成员函数是否是检查 p 是否未初始化的标准且可靠的方法?无论平台、编译器、编译器的优化标志等如何,它总是返回 0 吗?

最佳答案

不存在未未初始化的std::auto_ptrdefault constructor将指针初始化为 0:

explicit auto_ptr( X* p = 0 );

因此 get() 将在默认构造的 std::auto_ptr 上有效地返回“0”。

关于c++ - 未初始化 auto_ptr 时 get() 是否可靠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39102908/

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