C++ qscopedpointer qfile不';t动态写入文件

C++ qscopedpointer qfile不';t动态写入文件,c++,smart-pointers,qfile,C++,Smart Pointers,Qfile,写入文件时遇到问题。 在我的代码中,我有一个指向文件(私有类成员)的智能指针,我想将smth写入其中。 问题是写入函数写入缓冲区,缓冲区内容仅在我关闭应用程序时写入文件。为什么会这样 这是我的密码: void MyClass::setFile(const QString &name) { m_file.reset(new QFile(name + "temp.txt")); m_file->open(QFile::WriteOnly); } void writeT

写入文件时遇到问题。 在我的代码中,我有一个指向文件(私有类成员)的智能指针,我想将smth写入其中。 问题是写入函数写入缓冲区,缓冲区内容仅在我关闭应用程序时写入文件。为什么会这样

这是我的密码:

void MyClass::setFile(const QString &name)
{
    m_file.reset(new QFile(name + "temp.txt"));
    m_file->open(QFile::WriteOnly);
}

void writeToFile()
{
    if(m_file != nullptr)
    {
        m_file->write((char *)(&m_str), sizeof(m_str));    // m_str is a struct
        m_file->flush();
    }
}