Bu sayfadaki yazılar
Sayfanın metni
Sayfa 41
Eğer Linux kullanıyorsanız gcc adlı derleyiciyi kullanabilirsiniz. Büyük olasılıkla zaten sisteminizde kuruludur. Yine g++ seçeneğinin de kurulu olduğundan emin olun. Bazen gcc kurulu olup g++ olmayabilir, dikkat edin.
Windows ve Linux dışındaki bütün platformlarda da muhtemelen gcc'nin bir portu vardır.
Bu bahsedilen derleyicilerden birini kurduktan sonra, bir konsol penceresi açın (Visual Studio kullanıyorsanız, Başlat->Microsoft Visual Studio->Visual Studio Tools->Visual Studio Command Prompt; gcc için ise herhangi bir konsol). Derleyici programının adını yazın (VS için “cl”, gcc için “gcc”). Eğer konsol size programı bulamadığını söylerse derleyiciyi kuramadınız demektir. Bu durumda web forumlarında yardım bulup bu problemi aşmaya çalışmalısınız.
Eğer aşağıdaki hatalardan birini alırsanız her şey yolunda demektir.
Gcc: VS;
no input file usage: cl
Artık kursa hazırsınız.
İlk Program
Şimdi ilk C++ programımızı yazacağız. Bunun için kaynak klasöründe yeni bir text dosyası yaratın ve adını “basit.cpp” koyun. Daha sonra bu dosyayı bir editör ile (notepad, kate, emacs vs.) açın ve içine şu satırları yazın. Merak etmeyin birazdan bütün satırları açıklayacağız.
#include <iostream> void main()
1 std::cout<<'batsin bu dunya:)”<<std::endl;
return;
Dosyayı kaydedin ve konsola geçin (genelde program yazarken bir editör penceresi ve bir konsol penceresini hep açık tutun) konsolda kaynak klasörüne gidin (ve hep orada kalın). Mesela Windows'da
> > cd Kaynak
Linux'ta ise: >cd home/ahmet/kaynak
Şimdi kodu derlemek için gereken komutu verin. Mesela VS derleyicisi için
> el batsin.cpp
gcc için ise:
> gt4 batsin.cpp
Eğer dosyayı yazarken herhangi bir harf veya noktalama işareti hatası yapmadıysanız şimdi kaynak klasörünüzde yeni çalışabilir bir dosya olacak. Bu dosyanın adını konsola girdiğinizde de ilk programınız çalışacak ve o muhteşem mesajı göreceksiniz.
Neler Oluyor
Şimdi programımızı inceleyeceğiz. Aslında bu en basit programda bile, iki satırda, oldukça ileri bazı konuların örnekleri var. Fakat aslında biz bu ileri konularla ilgili olan satırları çok basit bir amaç için kullanıyoruz. Kafanızın karışmaması için şöyle bir yol takip edeceğim. Şimdilik bu ileri düzeyde konularla ilgili olan iki satırı ne amaçla kullandığımızı söyleyip bir kalıp olarak ezberlemenizi isteyeceğim. Arka planda olan daha derin detayları daha sonra açıklamak üzere es geçeceğim.
Bahsettiğimiz bu iki satır birinci ve beşinci satırlar:
#include <iostream>
bu dunya:)”<<std::endl;
Aslında büyük olasılıkla tahmin ettiğiniz üzere, bu satırları konsola programımızın yazı yazdırabilmesi için kullanıyoruz. Yazı yazdıran asıl komut beşinci satır. Tırnak işareti içindeki mesajı değiştirerek istediğiniz mesajı yazdırabilirsiniz. Bu satırdan birden fazla tekrarlayıp her birine farklı mesajlar da yazdırabilirsiniz. Mesela
#include <iostream>
void main() ( bu dunya:)”<<std::endi; stdi:cout<<”bitsin bu ruya”<<std::endi; return;
Birinci satırla ilgili bilmeniz gereken tek şey beşinci satırda gördüğünüz komutun çalışabilmesi için birinci satırın programınızın başında yer alması gerektiği.
Şimdi diğer satırları inceleyelim void main()
return;
Önce küme parantezlerine ( { ve } ) dikkatinizi çekmek istiyorum. Bu parantezler C++ dilinde kod satırlarını gruplamaya yararlar. Daha sonra göreceğimiz pek çok yapıda da bu gruplamayı görüyor olacaksınız. Bu örneğimizde küme parantezler programımızın tamamını grupluyor. Bu şekilde gruplanmış olan kod satırlarının oluşturduğu gruba “Kod Bloğu” denir.
Programın üçüncü satırında gördüğünüz int main() ifadesi burada kod bloğunun adını veriyor (aslında bu bir “fonksiyon” ve
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 40
ve Nesne Yönelimli
Şekil 1.
Giriş
Merhaba sevgili okuyucular. Bundan böyle, bu köşede dünyada en çok kullanılan programlama dillerinden biri olan C++ dilini öğrenmeye başlayacaksınız. Aynı zamanda Nesne Yönelimli Programlama'nın (Object Oriented Programming, OOP veya bazen de Object Oriented Analysis and Design yani OOAD olarak yabancı kaynaklarda karşınıza çıkabilir) ne olduğunu ve dili ile nasıl Nesne Yönelimli Programlama yapacağınızı görüyor olacaksınız. Nesne yönelimli programlama yapmak için kullanabileceğiniz tek dil C++ değil. Smalltalk, Java veya C# gibi başka nesne yönelimli diller olduğu gibi, zaten son yıllarda dünyadaki bütün programlama dilleri Nesne Yönelimli yaklaşımları bünyelerine katıyor. C++ bu diller arasında muhtemelen en yüksek bellek ve CPU performanslı programları üretebilmenize imkan tanıyan çok güçlü bir dil.
Temel olarak kursumuz bu iki kulvarda paralel ilerliyor olacak. Bir kulvarda C++ hakkındaki bazı kavramları öğrenirken, diğer kulvara atlayıp Nesne Yönelimlilik ile ilgili bazı kavramlara değineceğiz. Sonra tekrar kulvarına geçip öğrendiğiniz yeni bir Nesne Yönelimli yaklaşımı C++ ile nasıl kullanacağınızı göreceksiniz.
C++ dünyadaki belki en güçlü programlama dillerinden olmasına karşın maalesef yazılımcılar tarafından çoğu zaman verimsiz kullanılmaktadır. C++ kullanan pek çok yazılımcının bu güçlü “dilden” defalarca “dili” yanmıştır. C++'ı tam anlayıp öğrenmeden kullanmaya kalktığınızda size de çok zor gelebilir. Ancak bu gözünüzü korkutmasın. Bu dilin bütün inceliklerini yavaş yavaş başlangıç seviyesinden alarak inceleyecek ve anlatacağız. Herhangi bir başka programlama dilini bilmiyor olduğunuzu varsayacağım. Bu yüzden de en temel kavram ve komutlardan başlıyoruz. Bildiğinizi varsayacağım iki şey var. Birincisi işletim sisteminizde dosya ve klasörleri kullanabilmek. Yeni klasör ve dosyalar yaratıp silebiliyorsanız tamamdır. İkincisi de işletim sisteminizde konsol programını açmayı bilmeniz. Yazdığımız programları yeni yaratacağınız text tabanlı dosyalara yazıp konsoldan derleyiciyi kullanarak çalışabilir (.exe) hale getiriyor olacağız.
Ayrıca genel olarak CPU ve Bellek gibi kavramlardan da bahseden Bilgisayar Mimarisine Giriş yazı dizisini de takip etmenizi tavsiye ederim.
Ön Hazırlıklar
Eğer Windows kullanıyorsanız ve hali hazırda yapmadıysanız yapmanız gereken bir ayar var. Hemen bir Windows Explorer penceresi açın. Üst menüden Araçlar->Klasör Seçeneklerini seçip orada “Bilinen dosya türlerinin uzantılarını gizle” seçeneğini bulun ve onu seçilmemiş hale getirin. Bu değişikliği yapınca artık Explorer'da bütün dosyaların .exe, .txt gibi uzantılarını görebiliyor hale geleceksiniz. Bu önemli değişikliği yapmazsanız sonra bazı basit hatalardan uzun vakitler kaybedebilirsiniz.
Bunun yanında kendinize bir çalışma klasörü oluşturun. Örneğin C:\kaynak veya /home/ahmet/kaynak vs gibi... Buraya kursun geri kalanında Kaynak Klasörü diyeceğim
Derleyici Kurulumu
C++ ile program yazabilmek için bilgisayarınızda derleyici (compiler) denilen bir yazılım kurulu olması gerekiyor. Bu kursta ilerlerken hangi işletim sistemini ve hangi derleyiciyi kullandığınızın bir önemi yok.
Eğer Windows kullanıyorsanız benim tavsiye edeceğim iki ücretsiz derleyici var. Bunlar Visual Studio Express (http://www.microsoft.com/express/download/) ve Mingw (http://sf.net/project/showfiles.php?group_id=2435 buradan en tepedeki Mingw Automated Installer seçeneğini kullanın ve kurulum sırasında g++ compiler seçeneğini işaretlemeyi unutmayın)