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

  • BaaaStuds's channel

    BaaaStuds's

    10 Mart 2009
  • jedimasterkyle

    jedimasterky

    11 ŞUBAT 2006
  • SHAYTARDS

    SHAYTARDS

    1 EKİM 2008