C++

C++ Dilinde Fonksiyonlar 2023

C++ programlama dili, yüksek performanslı, nesne yönelimli bir dil olarak bilinir. Bu dildeki fonksiyonlar, C++ programlarının temel yapı taşlarından biridir. C++ dilindeki fonksiyonlar, bir veya daha fazla işlevi yerine getirmek için kullanılır ve programcıların kodlarını daha modüler hale getirmelerine olanak tanır.

Fonksiyonların Tanımlanması ve Çağrılması

C++ dilindeki fonksiyonlar, belirli bir işlevi yerine getirmek için tasarlanmış kod bloklarıdır. Fonksiyonlar tanımlanırken, fonksiyonun adı, dönüş tipi, parametre listesi ve işlevin gövdesi belirtilir. Fonksiyonun adı, daha sonra programda çağrılacak olan ismidir. Dönüş tipi, işlevin geri döndüreceği değerin tipini belirtir. Parametre listesi, fonksiyona giriş argümanlarını tanımlar. Fonksiyonun gövdesi ise, işlevin gerçekleştireceği işlemleri içeren kod bloğudur.

Örnek fonksiyon tanımı:

int toplama(int sayi1, int sayi2) {
  int toplam = sayi1 + sayi2;
  return toplam;
}

Bu fonksiyon, toplama adıyla tanımlanmıştır. Dönüş tipi int olan ve iki adet int tipinde parametresi bulunmaktadır. Fonksiyonun gövdesinde, sayi1 ve sayi2 parametreleri toplanarak toplam adlı değişkene atılır ve toplam değişkeni geri döndürülür.

Fonksiyonun çağrılması ise şu şekilde yapılır:

int sonuc = toplama(5, 3);

Bu örnek, toplama fonksiyonunu çağırarak, 5 ve 3 parametrelerini geçirir ve sonuc adlı değişkene fonksiyondan dönen değeri atar.

Fonksiyon Parametreleri ve Argümanları

Fonksiyon parametreleri, fonksiyonun işlevini yerine getirmek için gereken giriş değerlerini belirtir. C++ dilinde fonksiyon parametreleri, fonksiyon tanımının parantez içinde belirtilen listesi aracılığıyla tanımlanır. Parametrelerin tanımlanması, parametre ismi ve tipi arasında yer alan veri tipi belirteci kullanılarak yapılır.

Örnek fonksiyon tanımı:

void mesajYazdir(string mesaj) {
  cout << "Mesaj: " << mesaj << endl;
}

Bu örnekte, mesajYazdir fonksiyonu, bir string tipinde parametre (mesaj) alır ve bu parametreyi kullanarak bir mesaj yazdırır.

Fonksiyon argümanları, fonksiyona geçirilen giriş değerleridir. Argümanlar, fonksiyon çağrısı sırasında parantez içinde belirtilir ve parametrelerle eşleştirilir.

Örnek fonksiyon çağrısı:

mesajYazdir("Merhaba, Dünya!");

Bu örnekte, mesajYazdir fonksiyonu, “Merhaba, Dünya!” argümanıyla çağrılır ve bu argüman, fonksiyon içindeki mesaj parametresine atanır.

Fonksiyon Overloading

C++ dilinde fonksiyon overloading, aynı fonksiyon adı ile farklı parametre listelerine sahip birden fazla fonksiyon tanımlanmasıdır. Fonksiyon overloading, fonksiyonların daha modüler hale gelmesine ve aynı işlemi gerçekleştiren ancak farklı veri tipleriyle çalışan fonksiyonların tanımlanmasına olanak tanır.

Örnek fonksiyon overloading:

int carpma(int sayi1, int sayi2) {
  return sayi1 * sayi2;
}

float carpma(float sayi1, float sayi2) {
  return sayi1 * sayi2;
}

Bu örnekte, carpma fonksiyonu, hem int hem de float tipinde iki parametre alacak şekilde iki kez tanımlanır. İlk tanım, int tipinde iki parametre alır ve bu parametreleri çarparak sonucu geri döndürür. İkinci tanım ise float tipinde iki parametre alır ve aynı işlemi gerçekleştirir.

Fonksiyonlar ve Dönüş Değerleri

C++ dilindeki fonksiyonlar, bir veya daha fazla değer döndürebilirler. Fonksiyonun dönüş değeri, fonksiyonun gerçekleştirdiği işlem sonucunu temsil eder.

Örnek:

int kareAl(int sayi) {
  return sayi * sayi;
}

Bu örnekte, kareAl fonksiyonu, bir tamsayı tipinde parametre (sayi) alır ve bu parametrenin karesini hesaplayarak sonucu bir tamsayı değeri olarak döndürür.

Dönüş değeri olmayan fonksiyonlar ise void anahtar kelimesi ile tanımlanırlar. Bu fonksiyonlar, herhangi bir değer döndürmezler.

Örnek:

void mesajYazdir(string mesaj) {
  cout << "Mesaj: " << mesaj << endl;
}

Bu örnekte, mesajYazdir fonksiyonu, bir string tipinde parametre (mesaj) alır ve bu parametreyi kullanarak bir mesaj yazdırır. Ancak bu fonksiyon herhangi bir değer döndürmez.

Fonksiyon Göstericileri

Fonksiyon göstericileri, C++ dilindeki fonksiyonların bellekteki adreslerini tutmak için kullanılan özel veri tipleridir. Fonksiyon göstericileri, fonksiyonların adreslerini taşıyan değişkenler olarak düşünülebilirler.

int topla(int sayi1, int sayi2) {
  return sayi1 + sayi2;
}

int main() {
  int (*fonksiyonGosterici)(int, int) = &topla;

  int sonuc = (*fonksiyonGosterici)(3, 5);

  cout << "Toplam: " << sonuc << endl;
  return 0;
}

Bu örnekte, topla fonksiyonunun adresi bir fonksiyon gösterici (fonksiyonGosterici) değişkenine atanır. Daha sonra fonksiyonGosterici değişkeni, fonksiyonun çağrılması için kullanılır. Fonksiyon göstericisi değişkeni, normal bir fonksiyon çağrısı gibi parantez içindeki parametreleri alır.

Bunlar da hoşunuza gidebilir...

Bir cevap yazın

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