SORU
29 EKİM 2008, ÇARŞAMBA


Güvenli STL vector depolama her zaman bitişik olduğunu varsayalım.

Eğer boyutları olan bir STL vector, eleman 0 adresini al ve vektör kalan bellek takip edecek varsaymak güvenli mi?

örneğin

vector<char> vc(100);
// do some stuff with vc
vc.resize(200);
char* p = &vc[0];
// do stuff with *p

CEVAP
29 EKİM 2008, ÇARŞAMBA


C 03 standart (23.2.4.1): gelen

Bir vektör öğeleri saklanır eğer v ise bitişik, yani bir vektör T bazı. yazın itaat bool dışında, için == &v kimlik &v[n] [0] n 0 <= n < v. size().

Ama dizinin yeniden (herhangi bir işaretçiler ve kullanımına geçersiz) elemanları ekledikten sonra olmaya dikkat et.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Brandon McCrary

    Brandon McCr

    15 Ocak 2012
  • Migs351

    Migs351

    3 HAZİRAN 2007
  • TheForgottenGamer1

    TheForgotten

    28 AĞUSTOS 2009