У меня есть что-то вроде этого:
#include <iostream>
#include <map>
int main() {
std::map<int, int*> mapaString;
int* teste = mapaString[0];
std::cout << teste << std::endl;
if(!teste)
mapaString[0] = new int(0);
std::cout << mapaString[0] << std::endl;
std::cout << mapaString[1] << std::endl;
return 0;
}
В документации по gcc и cpluplus.com просто сказано, что будет вызываться конструктор элемента по умолчанию, но когда указатель объявляется без его инициализации, его значение будет быть неопределенным.
Гарантируется ли, что возвращенное значение будет указателем NULL при вызове оператора индекса ([]), когда для клавиши не назначено сопоставленное значение, а тип возвращаемого значения - указатель?