Здравствуйте, Krovosos, Вы писали:
K>Я могу понять, что STL внутри себя выделяет память. Я не могу понять — почему эта память обратно не вернулась??
уважаемый дон когданить слышал про аллокаторы в stl?
я выкинул из примера все что связано с виндюками и прогнал под valgrind'ом, который в конце концов выдал мне следующее:
==3963== malloc/free: in use at exit: 0 bytes in 0 blocks.
==3963== malloc/free: 1,015,633 allocs, 1,015,633 frees, 24,004,650 bytes allocated.
==3963== For counts of detected errors, rerun with: -v
==3963== All heap blocks were freed -- no leaks are possible.
zaufi@zaufi /work/tests $ uname -a
Linux zaufi 2.6.30-gentoo-r4 #9 SMP PREEMPT Mon Aug 17 01:32:33 MSD 2009 x86_64 Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz GenuineIntel GNU/Linux
zaufi@zaufi /work/tests $ gcc --version
gcc (Gentoo 4.4.1 p1.0) 4.4.1
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
дык вот возвращаясь к аллокаторам... рекомендую заглянуть в свою реализацию stl и посмотреть как работает дефолтный аллокатор... -- уверен откроете для себя много нового