SORU
7 Kasım 2011, PAZARTESİ


ayırma vektörler yığın bellek veya yığını?

Biraz bir şey hakkında karıştı

Beni bu ile başlayalım

vector<Type> vect; //allocates vect on stack and each of the Type (using std::allocator) also will be on the stack

vector<Type> *vect = new vector<Type>; //allocates vect on heap and each of the Type will be allocated on stack

vector<Type*> vect; //vect will be on stack and Type* will be on heap. 

Bilmek istediğim şey yukarıdaki ifadelerin doğru tüm vardır.

Nasıl bir hafıza vektör ya da bu konuda başka bir STL kapsayıcı Türü için dahili olarak tahsis edilir?

CEVAP
7 Kasım 2011, PAZARTESİ


vector<Type> vect;

vector, yani başlık bilgileri, yığın, ama serbest depo elemanları racak ("") yığın.

vector<Type> *vect = new vector<Type>;

ayırır ücretsiz deposunda her şey.

vector<Type*> vect;

will tahsis vector stack ve birkaç işaretçiler üzerinde ücretsiz mağaza, Ama nerede bu nokta tarafından belirlenir nasıl kullanılır (verebilirsin noktası öğesi 0 için ücretsiz depo elemanı ve 1 yığın demek).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • gamingbits

    gamingbits

    2 Mayıs 2006
  • Tina Chen

    Tina Chen

    26 Mayıs 2012
  • FF Radioo

    FF Radioo

    14 ŞUBAT 2007