首页 > 解决方案 > 如何将值存储到容器中?C++

问题描述

我正在尝试将值保存到容器中,但add找不到标识符。我也不能调用函数Array::add(*train)

错误 C2352 'Array::add': 非法调用非静态成员函数

Train* train = new Train(number, path, time_of_departure);
train->print();
add(*train);

//void contains();
return train;

容器

#include <iostream>
#include <vector>
#include "Array.h"
//#include <vector>

using namespace std;
Array::Array() {}

    void  Array::add(Train &train)
    {
        trains.push_back(train);
    }

我究竟做错了什么?

完整代码:https ://github.com/brenqP/stack50/tree/process/500

标签: c++classoop

解决方案


非法调用非静态成员函数意味着您试图在不使用包含该函数的类的对象的情况下调用该函数。


推荐阅读