SORU
18 Aralık 2010, CUMARTESİ


Bir yapı uçucu yaparak tüm üyeleri uçucu yapar mı?

Eğer var ise:

struct whatever {
int data;
};
volatile whatever test;
test.data uçucu da olacak mı?

CEVAP
18 Aralık 2010, CUMARTESİ


Başka bir soru (ya da asıl soruya bakmak için sadece başka bir yol) sordu:

Bir yapı yapma const tüm üyeler const yap?

Eğer var ise:

struct whatever { int data; };

const whatever test;

Test edecek.veri const de?

Benim cevabım : Evet. Eğer const türünde bir nesne whatever o zaman bildirirseniz tüm üyeleri const çok olacak

Benzer şekilde, eğer beyan bir nesnenin türü whatever volatile sonra tüm üyeleri olacak volatile de, tıpkı bildirmek nesne ile const, hepsi üye olacak const de.

const volatile aynı madalyonun iki yüzü vardır; * derin cv-qualifiers olarak ifade eder, böylece onlar.


Standart ($7.1.5.1/8) alıntı

[Not: kalıcı değildirbir ipucu uygulamaagresif önlemek için optimizasyonunesne içeren çünkünesnenin değeriolabilir demek bir fark edemez tarafından değiştirilebilir uygulama. Ayrıntılı için bkz: 1.9 anlambilim. Genel olarak, semantik uçucu ait olmak üzere tasarlanmıştır C. oldukları gibi aynı C ]

Bu, eğer nesne bir yapı örneği ise, derleyici anlamına gelirnesne içeren agresif optimizasyon kaçının,süreceüyelerinin her birinin agresif optimizasyon önler. (Aksi takdirde, ne başka bir nesne içeren optimizasyon kurtulabilirsiniz?)


İlgili konu:

Why do we use volatile keyword in C ?

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Eddie Bravo

    Eddie Bravo

    17 EKİM 2006
  • ethr95awd

    ethr95awd

    8 Kasım 2006
  • SerienTrailerMP

    SerienTraile

    7 HAZİRAN 2012