在函数Delete
中,我遇到一个错误,指出getTableColumns
必须具有指向对象的指针类型。
Class Column是一个抽象类。
class Table {
vector<Column*> _columns;
Column* value;
char* name;
public:
vector<Column*> getTableColumns() {
return _columns;
}
void Delete(char* name, int columnNumber, string thisValue) {
for (int i = 0; i <= findLongestColumn(); i++) {
if ((string)thisValue.compare((string)(getTableColumns()
[columnNumber]->getColumnValues()[i])) == 0)//!!!error
{...}
}
}
template <typename T>
class DataColumn : public Column {
vector<T> values;
public:
void getColumnValues()
{
return values;
}
答案 0 :(得分:1)
Column::getColumnValues
被声明为void
,但是您返回了一个值,然后又将其索引到结果中。