Menu
Coddy logo textTech

Metotlar (Üye Fonksiyonlar)

Coddy'nin C++ Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası — ders 8 / 104.

Üye fonksiyonlar, bir nesnenin neler yapabileceğini tanımlar. Bir dönüş türüne, bir isme ve isteğe bağlı parametrelere sahiptirler.

Bir değer döndüren metot

class Calculator {
public:
    int add(int a, int b) {
        return a + b;
    }
};

Void metot (geri dönüş değeri yok)

class Printer {
public:
    void printMessage(std::string msg) {
        std::cout << msg << std::endl;
    }
};

bool döndüren metot

class Checker {
public:
    bool isPositive(int num) {
        return num > 0;
    }
};

Başlık dosyasında bildirme, kaynak dosyasında uygulama

// Calculator.h
class Calculator {
public:
    int add(int a, int b);
};

// Calculator.cpp
int Calculator::add(int a, int b) {
    return a + b;
}

Dönüş türü, metot adından önce gelir. Bir metot herhangi bir şey döndürmediğinde void kullanın. :: kapsam çözümleme operatörü, uygulamaları sınıflarına bağlar.

challenge icon

Görev

Orta

StringHelper sınıfı için farklı dönüş türlerine ve parametrelere sahip dört üye fonksiyonu uygulayın:

  • getLength() — metnin uzunluğunu int olarak döndürür
  • toUpperCase() — metnin büyük harfli halini std::string olarak döndürür
  • contains(std::string word) — metnin kelimeyi içerip içermediğini bool olarak döndürür
  • repeat(int times) — metnin aralarında boşluklarla tekrarlanmış halini std::string olarak döndürür

Kopya kağıdı

Üye fonksiyonlar bir nesnenin neler yapabileceğini tanımlar. Bir dönüş türüne, bir isme ve isteğe bağlı parametrelere sahiptirler.

Değer döndüren metot:

class Calculator {
public:
    int add(int a, int b) {
        return a + b;
    }
};

Void metot (dönüş değeri olmayan):

class Printer {
public:
    void printMessage(std::string msg) {
        std::cout << msg << std::endl;
    }
};

Bool döndüren metot:

class Checker {
public:
    bool isPositive(int num) {
        return num > 0;
    }
};

Header dosyasında bildirme, kaynak dosyasında uygulama:

// Calculator.h
class Calculator {
public:
    int add(int a, int b);
};

// Calculator.cpp
int Calculator::add(int a, int b) {
    return a + b;
}

Dönüş türü metot isminden önce gelir. Bir metot herhangi bir şey döndürmediğinde void kullanın. :: kapsam çözünürlük operatörü (scope resolution operator), uygulamaları sınıflarına bağlar.

Kendin dene

#include <iostream>
#include "StringHelper.h"

int main() {
    std::string input;
    std::getline(std::cin, input);
    
    StringHelper helper;
    helper.text = input;
    
    std::cout << "Original: " << helper.text << std::endl;
    std::cout << "Length: " << helper.getLength() << std::endl;
    std::cout << "Uppercase: " << helper.toUpperCase() << std::endl;
    std::cout << "Contains 'World': " << (helper.contains("World") ? "yes" : "no") << std::endl;
    std::cout << "Repeated: " << helper.repeat(3) << std::endl;
    return 0;
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Nesne Yönelimli Programlama bölümündeki tüm dersler