コード例 #1
0
ファイル: container.cpp プロジェクト: 26597925/fakescript
container::~container()
{
	clear();
	
	{
		POOLLIST_DELETE(m_va_pl, variant_array, VARIANT_ARRAY_DELETE(*n));
		POOLLIST_DELETE(m_vm_pl, variant_map, VARIANT_MAP_DELETE(*n));
		POOLLIST_DELETE(m_v_pl, variant, USE(n));
	}
	
	{
		POOLLIST_CLEAR(m_cva_pl, variant_array, ARRAY_DEEP_CLEAR(n->va, variant_array *));
		POOLLIST_CLEAR(m_cvm_pl, variant_map, HASHMAP_CLEAR(n->vm));
		POOLLIST_CLEAR(m_cv_pl, variant, USE(n));
		
		POOLLIST_DELETE(m_cva_pl, variant_array, VARIANT_ARRAY_DELETE(*n));
		POOLLIST_DELETE(m_cvm_pl, variant_map, VARIANT_MAP_DELETE(*n));
		POOLLIST_DELETE(m_cv_pl, variant, USE(n));
	}
}
コード例 #2
0
ファイル: container.cpp プロジェクト: zhangf911/fakescript
container::~container()
{
	clear();
    pool<variant_array>::node * pvan = m_va_pl.p.m_data;
    while (pvan != 0)
    {
        VARIANT_ARRAY_DELETE(pvan->t);
        pvan = pvan->next;
    }
	POOLLIST_DELETE(m_va_pl);
    pool<variant_map>::node * pvmn = m_vm_pl.p.m_data;
    while (pvmn != 0)
    {
        VARIANT_MAP_DELETE(pvmn->t);
        pvmn = pvmn->next;
    }
	POOLLIST_DELETE(m_vm_pl);
	
	POOLLIST_DELETE(m_v_pl);
}