I'm trying to save data on a map inside an object and I get this error in var [name] = val and in var [name]:
no match operator []
header
#include <string>
#include <map>
using namespace std;
class Calculator{
public:
void addVal(string name, int val);
int getVal(string name);
private:
int memory;
map <string,int>* var;
};
cpp
#include "Calculator.h"
#include <string>
#include <map>
using namespace std;
Calculator::Calculator():
memory(0), var(new map<string, int>)
{}
void Calculator::addVal(string name, int val){
var[name]=val;
}
int Calculator::getVal(string name){
return var[name];
}
What am I doing wrong?