- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
map<string, int> M;
...
M["one"] = 1;
M["two"] = 2;
M["google"] = 1e100;
...
// найдём сумму всех значений --- т.е. всех правых частей
// пар <string, int>
int r = 0;
tr(M, it) {
r += it->second;
// (*it).first == [string], (*it).second == [int]
}
Altravert 21.01.2010 18:02 # +2
guest 21.01.2010 19:15 # +1
Altravert 22.01.2010 06:06 # 0
guest 23.01.2010 14:24 # 0
guest 21.01.2010 19:16 # +1
guest 21.01.2010 19:52 # −1
{
...
}
Это точно говнокод.
Altravert 22.01.2010 06:05 # 0
guest 22.01.2010 09:18 # +1
Попробуй, читая код сходу догадаться, что скрываеться за tr, не смотря на определение макроса...
Код должен быть написан так, что-бы пробежался по нему и все понятно буквально сразу и уже можно что-то менять.
Altravert 22.01.2010 09:52 # 0
guest 23.01.2010 23:28 # 0
guest 07.02.2010 17:25 # 0
Lexey 27.01.2010 20:36 # 0
guest 21.01.2010 19:53 # −3
Не скомпилиться.
Novi4oK 22.01.2010 21:24 # 0
guest 22.01.2010 21:42 # 0
Вроде в map<string, int> M; типы не перепутаны местами...
Novi4oK 22.01.2010 22:35 # 0
Altravert 23.01.2010 10:57 # 0
guest 23.01.2010 11:19 # −1
$EXE='/tmp/tmp.PNNg8UV4IH'
Нажмите ctrl+d для компиляции
#include <map>
int main()
{
map<string, int> M;
M["one"] = 1;
M["two"] = 2;
M["google"] = 1e100;
for (auto i=M.begin();i!=M.end();++i)
cout << i->first << "\t" << i->second << endl;
}
<stdin>: In function ‘int main()’:
<stdin>:17: предупреждение: переполнение при неявном преобразовании константы
Запуск...
google 2147483647
one 1
two 2
guest 23.01.2010 19:16 # 0
Altravert 23.01.2010 19:34 # 0
Предупреждение -- согласен, нехорошо.
guest 23.01.2010 20:26 # 0
Ворнинги -Wall
guest 25.01.2010 12:32 # −5
Altravert 26.01.2010 05:59 # 0
guest 26.01.2010 11:02 # 0
Ты, бля, в С видел шаблоны, хуйло?
antidotcb 02.02.2010 06:22 # −1
ну и template
guest 02.02.2010 07:15 # +3.2