0

我在我的电脑中下载了 qt 并将 QDir 称为#include<QDir>. 但它提出了错误fatal error: QDir: No such file or directory。无论如何使用 QDir 而不创建 .pro 文件?

我试图创建一个 .pro 文件:

Template += app 
QT += core
Source += src.cpp

但它不起作用

#include <QDir>
src.cpp:1:16: fatal error: QDir: No such file or directory
4

1 回答 1

2

构建您的src.cpp的最小 .pro 文件,假设您在那里也有main功能:

SOURCES += src.cpp

请使用 Qt Creator 新项目向导为您创建 .pro 文件(或 CMake 的 cmakelist.txt),或使用已知良好的示例/模板开始,这样您就可以做对了。您不想在没有 makefile 生成器的情况下使用像 Qt 这样的复杂框架!但如果你真的必须,使用 qmake(或 cmake)生成一次 makefile,然后删除 .pro 文件并继续编辑 makefile。请注意,如果没有很多额外的工作,它可能对除您之外的任何人都不起作用。所以不要去那里。


使用 QDir 执行某些操作的完整工作示例:

。轮廓:

# core and gui are defaults, remove gui
QT -= gui

# cmdline includes console for Win32, and removes app_bundle for Mac
CONFIG += cmdline

# there should be no reason to not use C++14 today
CONFIG += c++14

# enable more warnings for compiler, remember to fix them
CONFIG += warn_on

# this is nice to have
DEFINES += QT_DEPRECATED_WARNINGS

SOURCES += main.cpp

示例main.cpp

#include <QDir>
#include <QDebug> // or use std::cout etc

//#include <QCoreApplication>

int main(int argc, char *argv[])
{
    // for most Qt stuff, you need the application object created,
    // but this example works without
    //QCoreApplication app(argc, argv);

    for(auto name : QDir("/").entryList()) {
        qDebug() << name;
    }
    // return app.exec(); // don't start event loop (main has default return 0)

}
于 2019-07-13T08:26:14.620 回答