C++ struct ile pointer kullanımı

C++ programlamada, struct ve pointer’ları bir araya getirerek dinamik bellek yönetimi, veri yapıları oluşturma ve işlemleri gerçekleştirme imkanınız bulunmaktadır.

#include <iostream>

// Bir öğrenci bilgisini temsil eden struct
struct Ogrenci {
    int numara;
    std::string ad;
    std::string soyad;
};

int main() {
    // Bir Ogrenci struct'ı oluşturun
    Ogrenci ogrenci1;
    ogrenci1.numara = 123;
    ogrenci1.ad = "Ahmet";
    ogrenci1.soyad = "Yilmaz";

    // Ogrenci struct'ının pointer'ını oluşturun ve dinamik bellekten yer ayırın
    Ogrenci* ogrenciPtr = new Ogrenci;

    // Pointer üzerinden struct elemanlarına erişim ve değer atama
    ogrenciPtr->numara = 456;
    ogrenciPtr->ad = "Mehmet";
    ogrenciPtr->soyad = "Demir";

    // Pointer üzerinden struct elemanlarını ekrana yazdırma
    std::cout << "Ogrenci Bilgileri:" << std::endl;
    std::cout << "Numara: " << ogrenciPtr->numara << std::endl;
    std::cout << "Ad: " << ogrenciPtr->ad << std::endl;
    std::cout << "Soyad: " << ogrenciPtr->soyad << std::endl;

    // Dinamik bellekten ayrılan alanı serbest bırak
    delete ogrenciPtr;

    return 0;
}

Bu örnekte, Ogrenci adlı bir struct tanımlanmıştır. Daha sonra, bu struct türünden bir nesne (ogrenci1) oluşturulmuş ve bir diğeri ise dinamik bellekten (new operatörü ile) oluşturulmuştur (ogrenciPtr). Pointer ile struct elemanlarına erişim ve değer atama işlemleri -> operatörü ile yapılmıştır. Son olarak, dinamik bellekten ayrılan alan serbest bırakılmıştır (delete ogrenciPtr). Dinamik bellek yönetimine dikkat etmek önemlidir, aksi halde bellek sızıntılarına neden olabilir.

Ads Blocker Image Powered by Code Help Pro

Reklam Engelleyici Algılandı!

Reklamları engellemek için uzantı kullandığınızı tespit ettik.

Lütfen bu reklam engelleyiciyi devre dışı bırakarak ya da sitemize izin vererek bize destek olun.

Dikkat: VPN eklentiniz üzerinde de reklam engelleyici olabilir.