C++’ta Seperated(Ayrıştırılmış) Compilation

C++ programlama dilinin bize sağladığı güzelliklerden biride yazdığımız kodu farklı dosyalarda bulundurmamıza izin vererek “seperated compilation” yapması. Böylece uzun projelerde kafa karışıklığının önüne biraz daha geçilmiş olması sağlanıyor. Benimde sevdiğim bir özellik bu. Öyle kasacak bir zımbırtı da değil, sadece sol tarafta bulunan Solution Explorer dizininin altında bulunan “Source Files” klasörüne sağ tıklayıp yeni bir .cpp dosyası eklemeniz yeterli. Örnek bir kod vermek gerekirse,

// test_max.cpp isimli main function’ın barındırıldığı dosyanın içeriği aşağıdadır.

#include <iostream>
using namespace std;

int max (int,int); // diğer dosyada bulunan fonksiyonun deklerasyonu

int max_square(int); // diğer dosyada bulunan fonksiyonun deklerasyonu

int main ()
{
int m,n;
do
{
cin>> m >> n;

cout<< “\t max(“ << m << “,” << n << “) = ” << max(m,n) << endl;

cout<< “\t max^2 = “<< max_square( max(m,n) ) << endl;
} while(m!=0);

return (0);
}

/***********************************************************************/


/*max.cpp isimli main function’danönce deklare edilen

fonksiyonların içeriğinin tanımlandığı dosya içeriği aşağıdadır */

/*
kullanıcının girdiği 2 sayıdan büyük olanı bul
*/
int max (int x, int y )
{
if (x<y)
return y;

else
return x;
}

/*
bulunan max sayının karesini al
*/
int max_square(int input)
{
return (input*input);
}

Tabi bu durum sadece .cpp uzantılı “source file” olarak adlandırdığımız dosya türleri içinde geçerli değil, .h uzantılı “header file” dediğimiz dosya türleri içinde geçerli. Yalnız header file’ın main function’ın bulunduğu dosyaya çağırılması vb. bir kaç hususta farklılıkları var. Onları da sonraki yazımlarımda anlatmayı düşünüyorum. Ne de olsa acelem yok, programlama konusunda şimdilik “back to the basic” tadında, kısa yazılar yazmak hoşuma gidiyor😉

İşte bu da ekran alıntısı:  (büyültmek için üstüne tıklayın)

Yorum bırakın

Filed under C & C++

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s