gpt4 book ai didi

c++ - 错误 : expected a type

转载 作者:行者123 更新时间:2023-11-27 23:13:33 24 4
gpt4 key购买 nike

我正在尝试使用其 .h 文件以以下开头的开源类:

template <class DT>
class FFTReal
{
public:
enum { MAX_BIT_DEPTH = 30 };
typedef DT DataType;
explicit FFTReal (long length);
...

我第一次在我类(class)的私有(private)部分创建一个指向类(class)的指针:

ffft::FFTReal<double> *m_fft_object;

然后,在一个初始化函数中,用

m_fft_object = new fft_object((long)(FFTWindowSize));

正是在最后一行中,我得到了错误“错误:需要一个类型”。我已经对错误进行了一些搜索,但似乎没有任何内容符合我的特定问题。

谢谢

最佳答案

大概是因为fft_object不是一种类型。你可能是这个意思:

m_fft_object = new ffft::FFTReal<double>(static_cast<long>(FFTWindowSize));

我还为您更正了 C 样式转换。

如评论中所述,除非有充分的理由,否则应避免使用原始指针来存储对象数据。如果数据应该可以为空,请考虑使用智能指针 (std::unique_ptr<ffft::FFTReal<double>>),否则您可以简单地将对象实例存储为值 (ffft::FFTReal<double>)。任何一个选项都会使内存泄漏的可能性极小,而在使用 new 时和原始指针,你必须非常小心地删除分配的对象。

关于c++ - 错误 : expected a type,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18368785/

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