- Katılım
- 24 Şubat 2018
- Mesajlar
- 24,756
Eğer mevcut olan bir programa yeni bir kaynak kodu dosyası ilave ediyorsanız, o zaman haliyle bu program C ile yazılmışsa, siz de C ile yazılmış kaynak kodu ilave edin. Programın kendisi C++ ile yazılmışsa, yeni kaynak kodu da haliyla C++ olmalı. Ha, kendinizi kasarsanız bu kuralın dışına çıkabilirsiniz, ama elde edilecek fayda, ürkütülen kurbağaya değmez
Eğer C ile yazılmış bir program için yeni bir kütüphane hazırlıyorsanız, bu kütüphaneyi C ile yazmak daha uygun olur. Sadece C özelliklerini kullanan, ama C++ ile yazılmış bir kütüphaneyi de kullanabilirsiniz. Bu durumda C++ fonksiyonlarının, C'de görünür olması için bazı ilave tedbirler gerekecektir, yoksa linker hataları alırsınız.
C++ ile yazılmış bir program için hem C'de, hem de C++'da kütüphane geliştirebilirsiniz. Veya her iki dilde yazılmış hazır kütüphaneleri kullanabilirsiniz.
Eğer bir programda, alınabilecek en üst düzeyde işlem performansı elde etmeniz gerekiyorsa, C dili ile bu programı yazmak daha uygun olur. O yüzden işletim sistemi kernel'ları hep C dili ile yazılır. Aynı şekilde, openssl ve gnutls gibi şifreleme kütüphaneleri de hep C dilinde yazılmışlardır.
Eğer çok büyük ve karmaşık bir ticari program yazmanız gerekiyorsa, C++ ile elde edebileceğiniz ilave güvenlik ve doğruluk avantajlarını kullanmanız daha doğru olur.
Eğer 8 bitlik bir PIC veya AVR mikrokontroller için program yazıyorsanız, program zaten nispeten basit olacak ve C++ dilinin sağladığı kolaylıklara ihtiyaç olmayacak. Bu durumda çıkarılabilecek en üst seviye işlem performansı için C kullanmak çok daha uygundur.
Eğer 32 bitlik bir ARM işlemci için yazılım geliştiriyorsanız, ve işlemci üzerinde de Linux işletim sistemi varsı, C++ dilinin sağladığı ilave özelliklere ihtiyacınız yoksa bile, programı C++ dilinde yazın. C++ dilinin tip güvenliği üstünlüğü çok önemli bir avantajdır, ve aynı programı C ile yazmanın yaratacağı işlem performansı farkına çoğu zaman ihtiyacınız olmayacaktır.
Eğer C ile yazılmış bir program için yeni bir kütüphane hazırlıyorsanız, bu kütüphaneyi C ile yazmak daha uygun olur. Sadece C özelliklerini kullanan, ama C++ ile yazılmış bir kütüphaneyi de kullanabilirsiniz. Bu durumda C++ fonksiyonlarının, C'de görünür olması için bazı ilave tedbirler gerekecektir, yoksa linker hataları alırsınız.
C++ ile yazılmış bir program için hem C'de, hem de C++'da kütüphane geliştirebilirsiniz. Veya her iki dilde yazılmış hazır kütüphaneleri kullanabilirsiniz.
Eğer bir programda, alınabilecek en üst düzeyde işlem performansı elde etmeniz gerekiyorsa, C dili ile bu programı yazmak daha uygun olur. O yüzden işletim sistemi kernel'ları hep C dili ile yazılır. Aynı şekilde, openssl ve gnutls gibi şifreleme kütüphaneleri de hep C dilinde yazılmışlardır.
Eğer çok büyük ve karmaşık bir ticari program yazmanız gerekiyorsa, C++ ile elde edebileceğiniz ilave güvenlik ve doğruluk avantajlarını kullanmanız daha doğru olur.
Eğer 8 bitlik bir PIC veya AVR mikrokontroller için program yazıyorsanız, program zaten nispeten basit olacak ve C++ dilinin sağladığı kolaylıklara ihtiyaç olmayacak. Bu durumda çıkarılabilecek en üst seviye işlem performansı için C kullanmak çok daha uygundur.
Eğer 32 bitlik bir ARM işlemci için yazılım geliştiriyorsanız, ve işlemci üzerinde de Linux işletim sistemi varsı, C++ dilinin sağladığı ilave özelliklere ihtiyacınız yoksa bile, programı C++ dilinde yazın. C++ dilinin tip güvenliği üstünlüğü çok önemli bir avantajdır, ve aynı programı C ile yazmanın yaratacağı işlem performansı farkına çoğu zaman ihtiyacınız olmayacaktır.