önemsiz vs standart düzeni vs POD | Netgez.com
SORU
27 HAZÄ°RAN 2011, PAZARTESÄ°


önemsiz vs standart düzeni vs POD

Uzun lafın kısası, önemsiz tip, standart düzeni türleri ve Bölmeleri arasındaki fark nedir?

Özellikle, new T Herhangi bir şablon parametresi T new T() farklı olup olmadığını belirlemek istiyorum. Hangi tür özellikleri is_trivial, is_standard_layout is_pod seçmeliyim?

Bu tür özelliklerin herhangi bir derleyici büyü olmadan uygulanabilir mi? (bir tarafta)

CEVAP
27 HAZÄ°RAN 2011, PAZARTESÄ°


Gerçekten uzun lafın kısası, en azından olmadan yapılabilir sanmıyorumçokekstra açıklama. Bir önemli nokta dinamik başlatma vs statik, ama bir rahip olmayan kimse için bu açıklama kendi içinde birkaç sayfa

Bakla (yanlış)C 98 olarak belirlendi. Orada gerçekten iki ayrı niyet dahil, ne ifade çok iyi: 1) Eğer bir derleme C yapı bildirimi C , ne olmalıdır eşdeğer ne vardı C. 2) BİR BÖLME tek ihtiyacın/statik (dinamik) başlatma.

C 0 x/11 "" gösterimi (hemen hemen) tamamen, lehine "" ve "standart düzen". önemsiz POD damla Standart klavye düzeni C. alırsın aynı Önemsiz ... ... oluşturma Bir şey statik başlatma desteği yakalamak için tasarlanmıştır ilk hedefi yakalamak için tasarlanmıştır.

new T vs new T() baÅŸlatma ile ilgili olduÄŸundan,muhtemelenis_trivial istiyorum.

Derleyici sihirli gerekli olma konusunda emin değilim. Benim hemen tepki muhtemelen Evet olurdu, ama insanlar TMP ile yapılan bazı şeyleri bilmek, zor zamanlar biri bunu yapamaz belli olmak da var

Edit: örnek için, belki de en iyisi N3290: örnekler alıntı

struct N { // neither trivial nor standard-layout
   int i;
   int j;
    virtual ~N();
};

struct T { // trivial but not standard-layout
    int i;
private:
    int j;
};

struct SL { // standard-layout but not trivial
    int i;
    int j;
    ~SL();
};

struct POD { // both trivial and standard-layout
    int i;
    int j;
};

Şüphesiz tahmin, POD de POD bir yapı olduğu gibi.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • Air_Fooj

    Air_Fooj

    24 NÄ°SAN 2009
  • Thom Hall

    Thom Hall

    24 Kasım 2006