简体   繁体   English

错误:未知类型名称“QBuffer”; 你的意思是“Qt3DRender::QBuffer”吗?

[英]error: unknown type name 'QBuffer'; did you mean 'Qt3DRender::QBuffer'?

I have this code:我有这个代码:

    #include <QBuffer>

    // ---
    
    QString m_parentName;
    
    // ---
    
    QString path = QDir::tempPath();
    path = path + "/" + "temp-" + m_parentName + ".stl";

    QFile file;
    file.setFileName(path);
    file.resize(0); // Clear file contents if any
    file.open(QIODevice::Append);

    // Clear and add 80 bytes of header to QByteArray
    QByteArray temp_ba;
    QBuffer tmpBuffer(&temp_ba); // => error: unknown type name 'QBuffer'; did you mean 'Qt3DRender::QBuffer'?
    tmpBuffer.open(QIODevice::Append);

    tmpBuffer.write("Generated by: " // 14 bytes
                    "My Nice App"    // 11 bytes
                    "My Nice App"    // 11 bytes
                    "My Nice App"    // 11 bytes
                    "My Nice App"    // 11 bytes
                    "My Nice App"    // 11 bytes
                    "My Nice App"    // 11 bytes
                    , 80);

    file.write(temp_ba);
    file.flush();

    tmpBuffer.close();

My qmake project file *.pro contains:我的 qmake 项目文件*.pro包含:

QT += core gui qml quick quickcontrols2 widgets 3dcore 3drender 3dextras 3dinput 3dlogic 3dquick 3drender-private

I'm receiving this error:我收到此错误:

error: unknown type name 'QBuffer';错误:未知类型名称“QBuffer”; did you mean 'Qt3DRender::QBuffer'?你的意思是“Qt3DRender::QBuffer”吗? qbuffer.h:56:31: note: 'Qt3DRender::QBuffer' declared here qbuffer.h:56:31:注意:此处声明的“Qt3DRender::QBuffer”

What I'm doing wrong?我做错了什么?

错误截图

The error got resolved by replacing:通过替换解决了该错误:

#include <QBuffer>

with:和:

#include <QtCore/QBuffer>

Not sure why?不知道为什么? Namespace conflict?命名空间冲突?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM