我有这个CSVParser类,我继承了它,我需要在派生类中调用<<
运算符:
#include "dbcsv.h"
DbCsv::DbCsv() : CSVParser()
{
}
void addColumn(QString &source, const QString &val, const unsigned int s) // 0:duplicate, 1:unique
{
CSVParser::<< source.toStdString();
}
void removeColumn(QString &source, const QString &val)
{
}
我收到此错误:
dbcsv.cpp: In function 'void addColumn(QString&, const QString&, unsigned int)':
dbcsv.cpp:10: error: expected unqualified-id before '<<' token
dbcsv.cpp: At global scope:
最佳答案
CSVParser::operator<<(source.toStdString());
括号是必需的,这是一个函数调用。
当然,如果您尚未覆盖
operator<<
,那么它会更简单:*this << source.toStdString(); // probably what you want
关于c++ - 如何在派生类中调用<<的基类运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14787859/