Вот такой класс:
class VarTable { private: map<string, map<string, string>> itemsAttrs; public: string itemGetAttr(const string& item, const string& attr) const { // Я не знаю STL, но считаю, что если тут что-то не найдено, кинется эксепшен return this->itemsAttrs.find(item)->second.find(attr)->second; } };
Вот такой макрос:
#define assert_exception(expression) \ { \ bool caughtException = false; \ try \ { \ expression; \ } \ catch (...) \ { \ caughtException = true; \ } \ if (caughtException) \ { \ cout << #expression << " causes exception [OK]" << endl; \ } \ else \ { \ cout << #expression << " causes exception [FAIL]" << endl; \ exit(1); \ } \ }
Вот такой код:
VarTable variables; variables.addItem("i"); assert(variables.hasItem("i")); assert(!variables.itemHasAttr("i", "type")); assert_exception(variables.itemGetAttr("i", "type"));
Выводит:
variables.hasItem("i") [OK]
!variables.itemHasAttr("i", "type") [OK]
variables.itemGetAttr("i", "type") causes exception [OK]
Но стоит только продолжить тестирование, дописав В КОНЕЦ одну единственную строчку:
variables.itemSetAttr("i", "type", "int");
Как ВНЕЗАПНО:
variables.hasItem("i") [OK]
!variables.itemHasAttr("i", "type") [OK]
variables.itemGetAttr("i", "type") causes exception [FAIL]
И что это? Опять что ли код выполняется в случайном порядке? 
Сегодня хозяин увозил холодильник. Рассказывал, что все новостройки — дерьмо, свою он продал и купил какую-то брежневскую пятиэтажку, где по три квартиры на этаже. А то сейчас строят какой-то дом, так там их шестнадцать! Шестнадцать квартир на этаже! И проёмы эти между лифтами, где наркоманы ширяются. А вообще он а) летом застеклит мне балкон и б) на всё лето уедет в Тайланд. В Тайланде можно роскошно жить на 600 баксов в месяц (если не бухать в ресторанах разумеется!), все программисты и работают удалённо, раз в 30 дней иммигрируют из Лаоса и им дают визу. И тут я подумал, что героиновое житиё в съёмной квартире из планов на будущее стоит вычеркнуть (хочу шумоизоляцию, самодельный умный дом + тяжёлые наркотики чо-то уж сильно быстро убивают человека, второй день подряд левая рука в какой-то ёбаной невидимой муке), а вот Тайланд определённо стоит внести! Никаких военкоматов, БАССЕЙН И РЕСЕПШЕН ВО ДВОРЕ, хиккуеш с пацанами по скайпу и СЧАСТЛИВ! Ну а цунами смывает постройки всего раз в месяц, просто закопал магнитофоны в погреб, и волны не смогут их повредить. К несчастью, сейчас нужно писать министерство науки и образования российской федерации, так что до свидания, пацаны! Удачи с вашим ебаным бизнесом по перепродаже говна и организации быдлопьянок в дырявой рашке, а я доучусь и в Тайланд! 
Интересно что мешает сейчас в Тайланд 

Всё время ругался. А мои приехали только оттуда и довольны 
И каковы были мои аргументы против?А хз. Ты только про Турцию в ответ шутил
Чего уж вам стоит-то?!
Доступные тэги: <b>, <i>, <s>, <u>, <a href="">, <img src="" /> (загрузить), <pre>, <quote>
- themylogin › Самое дорогое в жизни Вчера, 02:19
- ramwoolf › Am I not always be wanting this? (x8) 16 мая, 23:08
- anonymous › Написание «не» с различными частями речи 16 мая, 16:06
- anonymous › A Tragedy in the Air 15 мая, 18:24
- themylogin › Итоги 2011 15 мая, 12:10
- themylogin › На гелике езжу 13 мая, 16:24
- anonymous › Waking up at ten 13 мая, 13:16
- themylogin › Жук 12 мая, 11:55
- themylogin › Давайте шутки из твиттера продолжим развивать здесь 7 мая, 11:03
- anonymous › Шевченко лох 6 мая, 14:02


