Taşınabilirlik, Derleme ve Bağlama
[vc_row][vc_column][vc_column_text]
Standart C++ kullanılarak yazılmış her kod tüm platformlarda çalıştırılabilir. Ama her platformda tekrardan derlenmesi gerekecektir.
Derleme işlemi programcının yazdığı kodun makine koduna çevrilmesidir. C++ için bu işi yapan çeşitli derleyiciler bulunmaktadır. GCC, Clang, VC++ vb.
C++ dili C dilini ve ANSI C standardını tamamen destekler ve C dili gibi taşınabilir. Fakat değişik yazılım firmalarının C++ programlama paketlerinin bu standart özelliklerden başka C ve C++ dillerini genişleten özellikleri ve kütüphane fonksiyonları vardır ve bunların kullanımı programcıların işlerini kolaylaştırır fakat kaynak kodun taşınabilirliğini azaltır.
Tümleşik geliştirme ortamı (IDE) kullanımı kod yazımını hızlandırabilir. Fakat değişik yazılım firmalarının C++ programlama paketlerinin bu standart özelliklerden başka C ve C++ dillerini genişleten özellikleri ve kütüphane fonksiyonları vardır ve bunların kullanımı programcıların işlerini kolaylaştırır fakat kaynak kodun taşınabilirliğini azaltır.
Bağlama
Her bir kaynak dosya için .o uzantılı nesne kodu dosyası oluşturulmuş olur. Bağlayıcı bileşenin yaptığı iş .o uzantılı nesne kodlarını ve programda kullanılan kütüphane dosyalarındaki kodlarla sentezleyerek tek bir çalışabilir dosya oluşturmaktır. Bağlayıcı sonrası çalıştırılabilir dosyalar Windows işletim sistemi için .exe olarak Linux için ise .out uzantılı olurlar.
Derleme İşlemleri
Ön işlemci
Koddaki ön işlemci komutlarını işler. Ön işlemci komutları # ile başlamak zorundadır.
Derleyici
İşlenmiş kodu alır ve object dosyalarına dönüştürür. Kod hatalarını kontrol eder. Diğer dosyalardan alınmış ifedeleri kabul eder.
Bağlayıcı
Object dosyalarını alır ve çalıştırılabilir dosyada birleştirir. Derleyicinin aldığı diğer dosyalardaki tüm ifadelerin varlığını kontrol eder.
Bağlama işlemi derlenen ayrı ayrı kodların tek bir dosyada birleştirilmesidir. C++ yazılan kodların ayrı dosyalara bölünmesine izin verir. Ama bu dosyaların headerlerle birbirine bağlanması gerekmektedir.
[/vc_column_text][vc_row_inner][vc_column_inner width=”1/2″][vc_btn title=”Önceki Ders” color=”green” align=”left” i_icon_fontawesome=”fa fa-chevron-left” add_icon=”true” link=”url:https%3A%2F%2Fyapbenzet.org.tr%2Fcpp-nedir-modern-cpp-tarihcesi%2F|||”][/vc_column_inner][vc_column_inner width=”1/2″][vc_btn title=”Sonraki Ders” color=”green” align=”right” i_align=”right” i_icon_fontawesome=”fa fa-chevron-right” add_icon=”true” link=”url:https%3A%2F%2Fyapbenzet.org.tr%2Fcpp-clion-kurulumu%2F|||”][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row]