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

  • Justin Case

    Justin Case

    3 EKİM 2011
  • khloe brooks

    khloe brooks

    25 Temmuz 2011
  • Matt Stokes

    Matt Stokes

    22 Ocak 2008