I need help for build an open source project, please.
-
wrote on 22 Jan 2021, 22:44 last edited by
stacktrace:
D:\WORKSPACES\Emmeth\src\qEmmeth\mainwindow.cpp:80: error: use of deleted function 'QFile::QFile(const QFile&)'
..\qEmmeth\mainwindow.cpp: In member function 'void MainWindow::open()':
..\qEmmeth\mainwindow.cpp:80:38: error: use of deleted function 'QFile::QFile(const QFile&)'
MainWindow::loadFile(fileName);
^Error Session:
void MainWindow::open()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("Load file"), "../../", tr("Emmeth Files (.emt);; XML Files (.xml);; PDF Files (.pdf);; TXT Files (.txt)"));if(!fileName.isEmpty()){ QFile file(fileName); if (!file.open(QIODevice::ReadOnly)) { QMessageBox::critical(this, tr("Error"), tr("Could not open file")); return; } qDebug() << "Open:" + fileName; //MainWindow::loadFile(fileName); MainWindow::loadFile(fileName); }
}
-
stacktrace:
D:\WORKSPACES\Emmeth\src\qEmmeth\mainwindow.cpp:80: error: use of deleted function 'QFile::QFile(const QFile&)'
..\qEmmeth\mainwindow.cpp: In member function 'void MainWindow::open()':
..\qEmmeth\mainwindow.cpp:80:38: error: use of deleted function 'QFile::QFile(const QFile&)'
MainWindow::loadFile(fileName);
^Error Session:
void MainWindow::open()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("Load file"), "../../", tr("Emmeth Files (.emt);; XML Files (.xml);; PDF Files (.pdf);; TXT Files (.txt)"));if(!fileName.isEmpty()){ QFile file(fileName); if (!file.open(QIODevice::ReadOnly)) { QMessageBox::critical(this, tr("Error"), tr("Could not open file")); return; } qDebug() << "Open:" + fileName; //MainWindow::loadFile(fileName); MainWindow::loadFile(fileName); }
}
wrote on 23 Jan 2021, 02:43 last edited by@ronaldon so which line is line 80? Seems it is the copy constructor for QFile Does a copy constructor for QFile even exist in the framework?
-
stacktrace:
D:\WORKSPACES\Emmeth\src\qEmmeth\mainwindow.cpp:80: error: use of deleted function 'QFile::QFile(const QFile&)'
..\qEmmeth\mainwindow.cpp: In member function 'void MainWindow::open()':
..\qEmmeth\mainwindow.cpp:80:38: error: use of deleted function 'QFile::QFile(const QFile&)'
MainWindow::loadFile(fileName);
^Error Session:
void MainWindow::open()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("Load file"), "../../", tr("Emmeth Files (.emt);; XML Files (.xml);; PDF Files (.pdf);; TXT Files (.txt)"));if(!fileName.isEmpty()){ QFile file(fileName); if (!file.open(QIODevice::ReadOnly)) { QMessageBox::critical(this, tr("Error"), tr("Could not open file")); return; } qDebug() << "Open:" + fileName; //MainWindow::loadFile(fileName); MainWindow::loadFile(fileName); }
}
fileName
is aQString
, not aQFile
. What does theloadFile
function require, can you show the function?Regards
-
stacktrace:
D:\WORKSPACES\Emmeth\src\qEmmeth\mainwindow.cpp:80: error: use of deleted function 'QFile::QFile(const QFile&)'
..\qEmmeth\mainwindow.cpp: In member function 'void MainWindow::open()':
..\qEmmeth\mainwindow.cpp:80:38: error: use of deleted function 'QFile::QFile(const QFile&)'
MainWindow::loadFile(fileName);
^Error Session:
void MainWindow::open()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("Load file"), "../../", tr("Emmeth Files (.emt);; XML Files (.xml);; PDF Files (.pdf);; TXT Files (.txt)"));if(!fileName.isEmpty()){ QFile file(fileName); if (!file.open(QIODevice::ReadOnly)) { QMessageBox::critical(this, tr("Error"), tr("Could not open file")); return; } qDebug() << "Open:" + fileName; //MainWindow::loadFile(fileName); MainWindow::loadFile(fileName); }
}
wrote on 23 Jan 2021, 09:00 last edited by JonBfilename
is of typeQString
.MainWindow::loadFile(QFile fileName)
is the signature [from your stackoverflow post, thanks to @Christian-Ehrlicher, where unlike here you give the necessary information], so accepts aQFile
, with an unhelpfully-named formal parameter. [Furthermore, this is passing-by-value-copy, which is not allowed forQFile
as it is derived fromQObject
.]- So
MainWindow::loadFile(fileName);
is not going to work.
What else is there to say?
Also, it's not very fair to those who try to answer here that you post the same question, with more detail, on stackoverflow, do not reference that here, say there that you have your answer, and leave this question here still open....
-
wrote on 27 Feb 2021, 16:14 last edited by
Yes, thanks guys. I have seen the error like you say. It was a conflict of params ( QString and QFile ) in the function. Thank all of you!!!