Classes and Objects (Sınıflar ve Nesneler)
C++ programlamanın asıl temel amacı, C programlama diline nesne yönelimini eklemektir. Sınıflar, nesneye yönelik programlamayı destekleyen ve genellikle kullanıcı tanımlı türler olarak adlandırılan C++ ‘nın merkezi bir özelliğidir.
Sınıf, bir nesnenin biçimini belirtmek için kullanılır. Sınıf, kendi veri üyelerini ve üye fonksiyonları tutan, bu sınıfın örneğini oluşturarak erişilebilen ve kullanılabilen kullanıcı tanımlı bir veri türüdür. Sınıf tanımındaki değişkenler veri üyeleri olarak adlandırılır ve fonksiyonlar üye fonksiyon olarak adlandırılır.
Class (Sınıf)
Bu aslında herhangi bir veri tanımlamaz, ancak sınıf adının ne anlama geldiğini, yani sınıftaki bir nesnenin ne içereceğini ve böyle bir nesne üzerinde hangi işlemlerin gerçekleştirilebileceğini tanımlar. Kendi veri üyelerini ve üye fonksiyonlarını barındıran, o sınıfın bir örneği oluşturularak erişilebilen ve kullanılabilen kullanıcı tanımlı bir veri türüdür. C++ ‘ın yapı taşlarından bir de sınıf kavramıdır. Sınıf, bir nesne için bir taslak gibidir. Sınıf tanımladığınızda, bir nesne için bir plan tanımlarsınız.
Object (Nesne)
Nesne, bazı özellikleri ve davranışları olan tanımlanabilir bir varlıktır. Nesne bir sınıf örneğidir. Sınıf tanımlandığında, bellek ayrılmaz, ancak örnek oluşturulduğunda (yani bir nesne oluşturulduğunda) bellek ayrılır.
Örnek:
Class (Sınıf) | Objects (Nesneler) |
İnsan | Cinsiyet, Yaş, Kilo, Boy, Saç Rengi |
Araba | Ferrari, Mercedes, Ford |
Meyve | Muz, Elma, Kivi, Ananas, Erik |
Hayvan | Kedi, Köpek, Tavşan, Leylek |
Syntax (Sözdizimi)
class sinifAdi { //değişkenler //fonksiyonlar }; class Dolap { public: double yukseklik; double genislik; double derinlik; };
Yukarıdaki sınıfın public (genel) anahtar sözcüğü, onu izleyen sınıfın üyelerinin erişim özniteliklerini belirler. Bir genel üyeye, sınıf nesnesi kapsamında herhangi bir yerden sınıfın dışından erişilebilir. Bununla birlikte sınıfın üyelerini private (özel) veya protected (korumalı) olarak belirtebiliriz.
Örnek:
#include <iostream> using namespace std; class Dolap { public: double yukseklik; double genislik; double derinlik; }; int main() { Dolap d1; Dolap d2; Dolap d3; double hacim=0.0; d1.yukseklik =9.3; d1.genislik =12.8; d1.derinlik =6.1; d2.yukseklik =3.42; d2.genislik =34.4; d2.derinlik =53.1; d3.yukseklik =23.5; d3.genislik =53.33; d3.derinlik =13.7; hacim = d1.yukseklik * d1.genislik * d1.derinlik; cout << "Birinci dolabın hacmi: " << hacim << endl; hacim = d2.yukseklik * d2.genislik * d2.derinlik; cout << "İkinci dolabın hacmi: " << hacim << endl; hacim = d3.yukseklik * d3.genislik * d3.derinlik; cout << "Üçüncü dolabın hacmi: " << hacim << endl; return 0; }
Çıktı:
Birinci dolabın hacmi: 726.144 İkinci dolabın hacmi: 6247.11 Üçüncü dolabın hacmi: 17169.6