C’ den C++ ‘a Bir Adım

3006_C___Language_Tutorial

C++ , C diliniin bir çok özelliğinin geliştirilmiş ve yazılım üretkenliğini , kalitesini ve tekrar kullanılabilirliğini artırmaya imkan tanıyan nesne yönelimli programlamayı sağlayan bir dildir. C++ ilk olarak “C with classes” adıyla çıktı yani “sınflarla C ” olarak lanse edildi sonrasında C nin artırma operatörü olan ++ ile C++ adını aldı.İsminden de anlayacagımız üzere C++ nesneye dayalı bir programlama imkanı sunan aynı zamanda C’nin geliştirlmiş bir versiyonudur.

Bundan sonraki yazılarda daha çok nesne yönelimli programlama üzerinde duracağım ve şimdi bazı temel şeylerden bahsetmek istiyorum.Sınıflarla başlayalım. Bir çoğumuzun C’den hatırladığı struct yapısına benzer.

struct yapıAdı{
veri tanımları;
üye fonksiyonlar();
}nesne listesi;


class sınıf_adı{
private:
private veri ve fonksiyonlar;
public:
public veri ve fonksiyonlar;
protected:
protected veri ve fonksiyonlar;
}nesne listesi;

 

 

 

ilk önce sınıf içeriğinden başlamak istiyorum.Sınıf üyeleri , bir class’ta public veya private olabilir(protected ile şu an ilgilenmeyeceğiz ilerleyen yazılarda bahsedilecek). Public üyelere dışardan erişim mümkündür ancak private üyelere sadece kendi class’ındaki fonksiyonlarla erişilebilir.

Örneğin alttaki x değişkeni private olarak tanımlanmış ve bu değişkene class dışından erişim engellenmiştir.Ancak public olarak tanımlanan fonksiyona class dışından erişebilir ve bu fonksiyonlada x değişkenini kullanabiliriz.

 

class Benimsınıfım{

private:
int x; //private üye

public:
void fonk(); //public üye
};

 

 

Ayrıca unutmamamız gereken şey , eğer bir üyenin public veya private olduğunu belirtmezsek varsayılan olarak private olmuş olur.Yani aşağıdakiyle üstteki aslında aynıdır.

class Benimsınıfım{
int x; //bişey belirtmediğimiz için private üye oldu.

public:
void fonk();
};

 

 

Sınıflarda nesne ve bu nesnenin kullanışlılığına değinmek istiyorum birazda.Bir sınıf nesnesi yoluyla dısarıdan nokta operatörünü kullanarak sınıfın yalnızca public bölümünde bildirilen veri elemanlarına veya fonksiyonlarına erisilebilir.Public veya protected olanlara erişilemez.

 

class sınıfadı{
   public:
      void kareAl(int); //kareAl fonksiyonunun prototipi

   private:
      int x;
}s1;
//kareAl fonksiyonunun implementasyonu
void sınıfadı::kareAl(int n){
     x=n;
     return x*=x;
}
main(){
      sınıfadı s2, s3; // s2 ve s3 adında yeni iki nesne oluşturduk.

      s1.kareAl(5); // . (nokta) ile public üyeye eriştik.
      s2.kareAl(5);
      s3.kareAl(10);

      return 0;
}

 

 

Add a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir