Ваш itr
указывает на pair<char, map<int, int> >
,
, поэтому его second
является map<int, int>
,
, поэтому итератор в , который сделает хитрость:
for(map<int, int>::iterator itr2 = itr->second.begin(); itr2 != itr->second.end(); ++itr2){
cout << itr2->second << endl;
}
Это - потому что Ваш проект XCode настраивается для создания отладочных символов с внешним dSYM файлом. Это на самом деле очень удобно для сборок конечных версий, поскольку это означает, что можно разделить отладочные символы из приложения, и когда пользователь отправляет crashdump Вам, можно использовать исходный dSYM файл для генерации надлежащего stacktrace для отладки.
Так или иначе, Вы не делаете потребность отключить поколение отладочного символа в Вашем проекте. Вместо этого просто измените тип отладочного символа для ЗАТМЕВАНИЯ (вместо "КАРЛИКА с dSYM Файлом"). Можно также использовать Удары, но это - старый формат.
Редактирование : А-ч, я вижу, что Вы имели в виду из командной строки, не из XCode. Я не сижу перед своим банкоматом Mac, но я вижу от gcc4 страница справочника , чем можно определить-gstabs для использования формата Ударов.
Я принимаю Ваше использование XCode. Перейдите к "Проекту" / пункт меню "Edit Project Settings", нажмите на вкладку сборки под разделом "GCC 4.0 - Code Generation", снятие флажка Генерируют Отладочные символы. Можно ввести в "sym" в поле поиска, чтобы помочь найти его.