Има ли начин да сортирате std::map по данните, а не по ключа? В момента моят код дублира цялата карта в масив само за да направи това.
std::map сортиране по данни?
Отговори (1)
Доколкото си спомням, std::map
ще ви даде итератора, който ще премине през елементите, сортирани по ключа. Единственият начин да преминете през сортираните елементи по стойност и да продължите да използвате картата е да пренапишете цялата колекция в друга карта, като ключът и стойността са обърнати.
Използвам приставката surround.vim от дълго време, но не и плъгина rails.vim. Оказва се, че плъгинът rails.vim добавя функционалност към surround.vim или го подкрепя. Така или иначе, накарах го да работи по следния начин:
- Инсталирайте плъгина rails.vim, ако още не е, и отворете ERB документ. Vim трябва да го разпознае като
eruby
файлов тип. - Ако не използва
:set filetype=eruby
Return, за да накара Vim да вижда нещата по вашия начин. - Изберете визуално текст, който искате да обвиете с ERB етикетите, като използвате v или V.
- Натиснете S= или S-. (Това е главно S)
- Избраният текст трябва да бъде обвит в блок
<%= %>
или<%- %>
.
Току-що потвърдих, че това работи и в режим на избор на колона.
Това е документирано в помощта за rails.vim: от търсенето в команден режим за :h rails-surround
. И ако нямате налична помощ за rails.vim, това е защото инструкциите не са спазени за инсталирането му:
:helptags ~/.vim/doc
Приставката rails.vim изисква също и приставката surround.vim, така че тя трябва да бъде предварително инсталирана. Използвам функционалността на този плъгин поне веднъж в минута, когато редактирам. Това скали.
- person Jookia; 22.10.2010