MSVC C4100:'application':未引用的形式参数警告

Jak*_*les 4 qt warnings visual-c++

使用MSVC进行编译时,以下代码会生成C4100警告.这怎么可能?"appliation"显然被引用.

class ApplicationInfo : public QObject
{
    Q_OBJECT

    public:
        ...
        static void initialize(QApplication &application);
        ...
    ...
}

void ApplicationInfo::initialize(QApplication &application)
{
    application.setOrganizationName(ApplicationInfo::organizationName());
    application.setOrganizationDomain(ApplicationInfo::organizationName());
    application.setApplicationName(ApplicationInfo::applicationName());
    application.setApplicationVersion(ApplicationInfo::applicationVersion().toString());
}
Run Code Online (Sandbox Code Playgroud)

Mic*_*urr 7

使用该application对象调用的函数是静态函数,因此它们实际上并不引用该application对象.

setOrganizationName
setOrganizationDomain
setApplicationName
setApplicationVersion
Run Code Online (Sandbox Code Playgroud)

是否所有静态成员QCoreApplication,其QApplication从派生.使用application引用仅解析这些函数的名称范围,但实际上并未使用该对象.