gpt4 book ai didi

c++ - unique_ptr 没有成员函数

转载 作者:太空狗 更新时间:2023-10-29 21:05:20 28 4
gpt4 key购买 nike

我正在将我的 gcc 4.4 更新到 gCC 4.7,我将这样做以使用 4.7。

我的问题是当我使用 unique_ptr 时。我写了这段代码

#include <iostream>
#include <memory>

#include <CL/cl.h>

using namespace std;

/*
*
*/
int main(int argc, char** argv) {

std::unique_ptr<cl_platform_id[]>yt;
yt = std::unique_ptr<icl_platform_id[]> (new cl_platform_id [3]);


/* yt.get()[0] = ...... */ this is error no member found

return 0;
}

但我想使用 yt 成员,例如 uique_ptr::get(),我得到的唯一函数是 operator*,那么问题是什么?

编辑:

这是我的问题: http://image-load.biz/?di=6FBY

最佳答案

这将是您的 IDE 的成员建议的问题。 std::unique_ptr 在默认模板和数组的部分特化中确实有一个成员 pointer get() const noexcept;

如果您自己键入 get(),那么编译器应该会很高兴。不幸的是,我从未使用过那个 IDE,所以我无法帮助您修复它的自动完成器。

是否应该调用 get() 是另一个问题;您可以通过 yt[0] 等方式访问数组元素。get() 仅适用于您实际需要原始指针的极少数情况。

关于c++ - unique_ptr 没有成员函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10230073/

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