C++ "expected a declaration"

标签 c++ qt

我刚刚开始使用 C++,但我已经遇到了问题。我正在尝试制作一个名为 brushInput 的 QFile(来自 QTCore)。它说“期待一个声明”。我已经查过了,它似乎是由语法问题引起的,但我没有在我的代码中看到它。上课和不上课。

#include <QtCore>

class Ink
{
    QFile *brushInput;

    brushInput = new QFile("x:\Development\InkPuppet\brush.raw");
};

最佳答案

类定义中不能有赋值。不过,您可以在 C++11 的类定义中进行默认初始化:

class Ink
{
    QFile* brushInput = new QFile("x:\\Development\\InkPuppet\\brush.raw"); 
};

但是,通常我希望初始化进入构造函数:

class Ink
{
    QFile* brushInput;
public:
    Ink(): brushInput(new QFile("x:\\Development\\InkPuppet\\brush.raw")) {}
};

关于C++ "expected a declaration",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18424230/

相关文章:

c++ - C++ 中的枚举类型是跨平台的吗?

c++ - 在Qt中显示浮点图像

python - OpenCV-如何消除凸轮扫描仪中的凸度缺陷?

c++ - 德尔福到 Qt/C++ : tmemorystream

c++ - 从源代码编译 Qt 5.3 失败

node.js - 为什么 Qt WebEngine Chromium 构建在 MSVS Express 2015 下失败?

c++ - "group"模板特例是否可能?

c++ - 在 wireshark 中查看来自 TFTP 客户端的未知操作码

c++ - 密码要求

python - 如何使用 Cython 将 python 函数作为参数传递给 c++ 函数