gpt4 book ai didi

c++ - C++中使用默认构造函数的隐式构造

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

我创建了一个简单的类来传递给 Juce 数组的排序方法 http://www.rawmaterialsoftware.com/api/classArray.html#ac1dca4ab2895315dd85e25eaca2fcab1

看起来像这样:

class XComparison
{
public:
static int compareElements (StraightPath first, StraightPath second)
{
return (int) (first.xOrigin - second.xOrigin);
}
};

当我创建一个实例传递给比较器时,这两个工作:

XComparison x;
XComparison x = XComparison();

但是这个给了我一个编译器错误:

XComparison x();

第 74、101、119 行的“'.compareElements' 的左侧必须具有类/结构/union ” http://juce.git.sourceforge.net/git/gitweb.cgi?p=juce/juce;a=blob;f=modules/juce_core/containers/juce_ElementComparator.h;h=f976c40c7741b3df30d10e699c282a3569a49e3c;hb=HEAD#l74

为什么隐式赋值在这里不起作用?

谢谢!

最佳答案

X比较x();被解析为 x 的函数声明,它不带任何参数并返回一个 XComparison。

http://yosefk.com/c++fqa/ctors.html#fqa-10.19

关于c++ - C++中使用默认构造函数的隐式构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10342593/

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