C , Ücretsiz Mağaza vs Öbek
new/delete
dinamik ayırma gerçekleşecek " dediücretsiz mağaza,malloc/free
operasyon kullanırkenyığın.
Eğer gerçek bir fark varsa bilmek, uygulamada istiyorum.
Derleyiciler iki dönem arasında bir ayrım yapıyor musunuz? (Ücretsiz mağazaveYığın, new/malloc
)
CEVAP
http://www.gotw.ca/gotw/009.htm; öbek ve ücretsiz mağaza arasındaki farklar daha çok daha iyi anlatabilir
Ücretsiz mağaza:
Ücretsiz mağaza ikisinden biri dinamik hafıza alanlar/ayrılan serbest yeni/sil. Nesne ömür boyu olabilir depolama süresi daha az ayrılmış; yani, ücretsiz mağaza nesneleri bellek olmadan ayrılmış olabilir hemen başlatılmış ve bellek olmadan yok hemen kaldırıldı. Sırasında depolama ayrılan zaman süresi ama nesnenin ömrü dışında, depolama erişilebilir ve olabilir void* ' yönetilen ama yok proto-nesne değil, static of üyeleri veya üye işlevleri olabilir onların adreslerini almış erişilen, veya başka bir şekilde değiştirilemez.
Öbek:
Öbek diğer Dinamik Bellek alan, ayrılan/malloc/free ile serbest ve onların türevleri. O sırada not varsayılan global new ve delete açısından uygulanabileceği malloc ve özel tarafından ücretsiz derleyici, öbek aynı şey değildir ücretsiz mağaza ve bir bellek tahsis alan olamaz güvenli bir şekilde ayırmanın olması diğer. Bellek tahsis yığın sınıfının nesneleri için kullanılabilir yerleştirme-yeni tip inşaat ve açık bir yıkım. Çok eskiden, eğer notlar hakkında ücretsiz mağaza nesne ömür boyu aynı şekilde burada da geçerlidir.
Kullanarak "yeni" bir yapı ü...
&Genişletmeden quot;mağaza" bir ş...
Lambda ifade öbek üzerinde bir nesne h...
Ne'en iyi Ücretsiz C Windows için...
Modern C performans için ücretsiz alab...