Ne zaman C, ne zaman C++ kullanmak lazım?

taydin

Timur Aydın
Staff member
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.
 

Forum istatistikleri

Konular
7,300
Mesajlar
123,417
Üyeler
2,949
Son üye
dündenbiri

Son kaynaklar

Son profil mesajları

Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
Freemont2.0 posta Freemont2.0 wrote on posta's profile.
Merhabalar :)
az bilgili çok meraklı
Prooffy semih_s Prooffy wrote on semih_s's profile.
Merhaba, sizden DSO2C10 hakkında bilgi rica ettim. Yanıtlarsanız sevinirim...
Unal taydin Unal wrote on taydin's profile.
Timur Bey, Arduino kontrollü bir akü şarj cihazı yapmaya çalışıyorum. Aklımdaki fikri basit bir çizim olarak konu açmıştım. Özellikle sizin fikirlerinizi çok önemsiyorum.
Back
Top