On Sat, 26 Feb 2005 03:48:04 +0700
Danny Kurniawan <[EMAIL PROTECTED]> wrote:
On Thu, 2005-02-24 at 15:10 +0700, durung_lulus wrote:
rekan-rekan
saya ada sedikit pertanyaan ttg stl map container dari stl-nya c++


misalnya saya punya map yang berisi map<int, Object*>

//definisi,
map<int,Object*> myMap;
map<int,Object*>::iterator it;

untuk membersihkan memory saya memakai :

for(it=myMap->end();it!=myMap->begin();it--) {
delete((*it).second);
}


hasilnya segmentation fault....tatapi seandainya saya loopnya traverse dari begin ke end, malah berjalan dg bener.
Adakah rekan yg tau kenapa bisa begitu?

Sebentar... apa saya bisa tau definisi Object? dan

Pada program saya Object itu sebenarnya sebuah class ConnItem yang mendekripsikan satu koneksi, setiap koneksi saya simpan kedalam suatu deque, tepatnya :


typedef deque<ConnItem*> ContainerQue;

Pada gilirannya deque tersebut saya simpan kedalam suatu map bedasar target host, tepatnya :
typedef map<string,ContainerQue*>;//string=inet address


begitulah....

apakah member second
itu? Maksud anda mau menghapus instance Object dari map, ataukah
menghapus alokasi member second dalam Object??



maksud saya adalah membersihkan memory ketika program selesai, dalam que dan juga dalam map....
but, btw, masalahnya sudah selesai, sepertinya implementasi didalam map dan deque memang berbeda, sehingga tidak bisa didelete dengan alur yang sama, CMIIW.


Thx for all the comments,
regards
========================================================================================
Akses Internet TELKOMNet-Instan beri Diskon s.d. 50 % khusus untuk wilayah Jawa Timur.
Informasi selengkapnya di www.telkomnetinstan.com atau hub 0800-1-INSTAN (467826)
========================================================================================


--
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis



Kirim email ke