无法调用静态函数

Can't call a static function

本文关键字:静态函数 调用      更新时间:2023-10-16

我在标题traductionCSV.h中声明了函数

static QVector<struct variableDurSupervision>
    listVariableDurSupervison(std::string fichierCSV);

我把它写在我的cpp中,然后我想在另一个文件supervision.cpp中使用它,所以我这样称呼它:

remplirDurCellule(
    traductionCSV::listVariableDurSupervison(
        "../../FichierCSV/ListeVariableSupervision.csv"
    )
);

但是它不会工作,我得到了这个错误:

对traductionCSV:: listvariabledursupervision (std::string)的undefined引用

我正确地包含了所有的文件,所以我不明白。

谢谢。

在cpp中定义类名时,可能遗漏了类名。它应该是这样的:

QVector<struct variableDurSupervision> traductionCSV::listVariableDurSupervison(std::string fichierCSV)
{
    ...
}

此规则适用于类的静态和非静态函数。