C `statik inş semantik` vs `sabit`
Örneğin arasındaki farklar: semantik ne C özellikle
static const int x = 0 ;
ve
const int x = 0 ;
bir bağlantı static
ve Depolama sınıfı belirleyici (ve bir işlevi dışında Yani içerde) her ikisi için de.
CEVAP
Dosya kapsamında, C fark yok . const
iç bağlantı varsayılan yapar, ve tüm global değişkenler statik ömrü var. Ama ilk varyant C aynı davranışı vardır, bu kullanmak için iyi bir neden olabilir.
Bir işlev içinde, ikinci sürüm C veya C diğer bazı diller gerektirir gibi, bir derleme zamanı sabiti olmak zorunda değil parametreleri hesaplanan, olabilir.
Bir sınıf içinde, temelde işlevleri için aynı şey, bir örnek const
değeri azalmaya başlardecimal-başlatıcı listesi. static const
bir başlangıç başlatma sırasında ayarlanır ve programın sonuna kadar değişmeden kalır. (Not: static
üyeleri için kod bildirimi ve başlatma ayrılır.) çünkü biraz farklı görünüyor
C const
anlamına gelir unutmayınsalt okunurdeğilsürekli. Eğer işaretçi-const
varsa bir programın diğer bölümleri bakmadığın bir süre değer değişebilir. Eğer değişken const
ile tanımlanmışsa o zaman kimse başlatma sonra bunu değiştirebilir ama başlatma hala keyfi olarak karmaşık olabilir.
Nerede C statik sabit başlatılamıyor...
&; statik sabit" vs " quot;#d...
Nasıl C özel statik, sabit bir harita ...
Neden't ben bir sınıfta olmayan i...
C statik sabit dize (sınıf üyesi)...