Menu
Coddy logo textTech

Sınıflar ve Nesneler

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

Bir sınıf, yapıyı tanımlayan bir taslaktır. Bir nesne, o taslaktan oluşturulan belirli bir örnektir.

Sınıf (şablon)

class Car {
public:
    std::string brand;
    int year;
    
    std::string getInfo() {
        return brand + " (" + std::to_string(year) + ")";
    }
};

Birden fazla nesne (örnek) oluşturma

Car car1;
car1.brand = "Tesla";
car1.year = 2023;

Car car2;
car2.brand = "Honda";
car2.year = 2020;

std::cout << car1.getInfo() << std::endl;  // Tesla (2023)
std::cout << car2.getInfo() << std::endl;  // Honda (2020)

Her nesne bağımsızdır. car1 nesnesini değiştirmek car2 nesnesini etkilemez. Aynı sınıftan, her biri kendi verisini tutan birden fazla nesne oluşturabilirsiniz.

challenge icon

Görev

Orta

Bir Car sınıfı (taslak) oluşturun. Program, her biri kendi verilerine sahip olan iki ayrı nesne (örnek) oluşturur:

  • Genel (public) üyeler: brand (string), year (int)
  • getInfo()"<brand> (<year>)" döndürür

Kopya kağıdı

Bir sınıf (class), yapıyı tanımlayan bir taslaktır. Bir nesne (object), bu taslaktan oluşturulan belirli bir örnektir.

Bir sınıf tanımlama:

class Car {
public:
    std::string brand;
    int year;
    
    std::string getInfo() {
        return brand + " (" + std::to_string(year) + ")";
    }
};

Bir sınıftan nesneler oluşturma:

Car car1;
car1.brand = "Tesla";
car1.year = 2023;

Car car2;
car2.brand = "Honda";
car2.year = 2020;

std::cout << car1.getInfo() << std::endl;  // Tesla (2023)
std::cout << car2.getInfo() << std::endl;  // Honda (2020)

Her nesne bağımsızdır ve kendi verilerini tutar. Bir nesneyi değiştirmek diğerini etkilemez.

Kendin dene

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

int main() {
    std::string brand1, brand2;
    int year1, year2;
    
    std::getline(std::cin, brand1);
    std::cin >> year1;
    std::cin.ignore();
    std::getline(std::cin, brand2);
    std::cin >> year2;
    
    Car car1;
    car1.brand = brand1;
    car1.year = year1;
    
    Car car2;
    car2.brand = brand2;
    car2.year = year2;
    
    std::cout << "Car 1: " << car1.getInfo() << std::endl;
    std::cout << "Car 2: " << car2.getInfo() << 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