通过引用传递对象时出错

1 c++ qt reference

所以我有一个问题....

我有一个方法
void MainWindow :: loadItems(const ArticleStore&store)
{
}

我试着在MainWindow类的
ArticleStore store()中调用这个;
loadItems(store)

我得到这个错误
mainwindow.cpp:15:错误:没有匹配函数调用'MainWindow :: loadItems(ArticleStore(&)())'
mainwindow.h:19:注意:候选者是:void MainWindow :: loadItems(const ArticleStore&)
ArticleStore定义:
class ArticleStore
{
public:
ArticleStore();
};

所以问题是出了什么问题?

yve*_*mes 8

这是因为

ArticleStore store();
Run Code Online (Sandbox Code Playgroud)

由编译器解释为函数声明.这就解释了为什么编译器在寻找‘MainWindow::loadItems(ArticleStore (&)())’ 你必须写的:

Article store; // With no parenthesis
Run Code Online (Sandbox Code Playgroud)