Следующий код в порядке?
class A
{
public:
A();
void foo();
};
map<int,A> m;
m[0].foo();
Или я должен сделать следующее:
map<int,A> m;
m[0] = A();
m[0].foo();
А также, могу ли я сделать это:
map<int,A> m;
A a = m[5];
А как насчет доступа по ссылке:
void foo(A & a);
map<int,A> m;
foo(m[5]);