SORU
8 AĞUSTOS 2011, PAZARTESİ


Neden main() C inlined olamaz?

C SSS okuyordum ve bir cümle dikkatimi çekti.

() ana ınline olamaz.

Neden bu?

CEVAP
8 AĞUSTOS 2011, PAZARTESİ


Standart dediği için:

[2003: 3.6.1/3]: Ana işlevi kullanılır (3.2) bir program dahilinde olmayacaktır. Bu ana bağlantı (3.5) uygulama tanımlı.Bir program ana satır içi veya statik olarak bildirir kötü oluşur.Adı ana aksi halde saklıdır. [Örnek: üye fonksiyonlar, sınıflar, ve numaralandırma diğer ad varlıklar olarak ana adı, olabilir. ]

Ve neden böyle yazıyor? Bireysel .. iyi, main uygulanması hakkında kadar gitmeye çalışıyorum çünküuygulama.. olarak mümkün, ve inline belki hiçbir pratik yararı varsa burada geçerli olmasını gerektiren uygulamaları sınırlamak istemiyor.


Komitede arkadaşım bunu doğruladı:

inline main() bir başına işe yaramaz bir neden yok. [ .. ] main() inlined çağırabilirsiniz C tercümanlık yapabilirim. 6*/static main() * [..] [ama] umarım karışıklığı önlemek amacıyla yasaklanmıştır. Zor mantığı bir şey zaten [Q&A] söylenenleri ek olacağını hayal buluyorum.


BTW, aslında satır içi uygulaması fonksiyonları ile inline ipucu anahtar kelime karıştırmayın. inline ve fiziksel olarak inlined olmayabilir fonksiyon işareti olabilir.

Eğer main Bu doğru olsaydı bile, "inlined olamaz" (ve kelimenin tam anlamıyladeğilmain satır içi uygulaması yerine başka cevaplar açıklandığı gibi garip ve anlamsız) olur da bir gerçek, teorik olarak hala inline ipucu: anahtar kelime, iyi bir destek olabilir.

Bu nedenle yukarıdaki ifade etmiyor, ve litb cevap: hiçbir gerçek yararı için karmaşıklaştırıyor.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • boniver

    boniver

    17 NİSAN 2006
  • booba1234

    booba1234

    22 Temmuz 2006
  • EEVblog2

    EEVblog2

    2 HAZİRAN 2014