gpt4 book ai didi

c++ - 尝试将指针数组传递给方法并返回它

转载 作者:行者123 更新时间:2023-11-30 00:53:24 27 4
gpt4 key购买 nike

我遇到了以下代码的问题,它给出了语法错误。我试图将一个指针数组传递给一个方法,并在最后简单地返回它。为什么这不起作用?

struct N {
static inline int*[] eval(int*[] p){
return p;
};
};

为什么我不能用这个来返回或使用这个类型?

谢谢

最佳答案

您不能从函数返回数组。但是可以使用指针语法:

static inline int** eval(...)

此外,p 在签名中的位置错误。它应该放在 * 之后和 [] 之前。

static inline int** eval(int* p[] )
{
return p;
};

但是,当您可以简单地使用 unique_ptr vector 时,为什么还要这么麻烦:

std::vector<std::unique_ptr<int>> eval(std::vector<std::unique_ptr<int>> const& p)
{
return p;
}

关于c++ - 尝试将指针数组传递给方法并返回它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16502091/

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