C++'da Parametreli Oluşturucu: Çalışma ve Örnekler

Yayınlanan: 2021-05-27

İçindekiler

Yapıcı nedir?

Yapıcı, bir sınıftaki nesneleri başlatmak için kullanılan bir sınıfın üye işlevidir. C++ ' da, sınıfın örneği olan bir nesne oluşturulduğunda, yapıcı otomatik olarak çağrılır. Bu nedenle, bir yapıcı, sınıfın özel bir üye işlevidir.

Parametreli Yapıcı nedir?

Argümanlar yapıcılara iletilebilir. Bir nesne oluşturulduğunda, bu argümanlar bir nesnenin başlatılmasına yardımcı olur. C++ 'da parametreli bir kurucu oluşturmak için , herhangi bir fonksiyona eklenebileceği gibi bir fonksiyona parametreler ekleyebiliriz. Yapıcının gövdesi tanımlandığında, nesneyi başlatmak için parametreler kullanılır.

C++'da Parametreli Oluşturucu Sözdizimi

sınıf name_of_class{

Erişim belirteci (Genel/korumalı/özel):

Üye değişkenler

Üye işlevleri

halka açık:

name_of_class(değişkenler){ //Yapıcı için kod

}

// diğer fonksiyonlar ve değişkenler

}

Sözdizimi, sınıf_adı ve ardından üye işlevleri ve üye değişkenleri içeren bir erişim belirtecini içeriyordu. Bütün bunlar yapıcı koduna dahil edilmiştir, yani yapıcının gövdesinde çağrılabilir.

Ayrıca Okuyun: C++ için Açık Kaynak Projeleri

C++'da Parametreli Oluşturucu Örneği

#include <iostream>

ad alanı std kullanarak;

sınıf Örnek

{

özel:

int a, b;

halka açık:

// Parametreli Oluşturucu

Örnek(int a1, int b1)

{

a = a1;

b = b1;

}

int getA()

{

bir dönüş;

}

int getB()

{

dönüş b;

}

};

int ana()

{

// yapıcıyı çağırmak

Örnek e1(5, 10);

cout << “e1.a = ” << e1.getA() << “, e1.b = ” << e1.getB();

0 döndür;

}

Çıktı

Açıklama: Özel değişkenler a ve b, Örnek sınıfında bildirildi. Parametreli bir kurucu, Örnek işlevi kullanılarak bildirilir. getA() ve getB() olmak üzere iki yöntem içerir. Ana sınıfta, yapıcı çağrılır ve yapıcının erişim değerleri atanır.

C++'da Parametreli Oluşturucu Nasıl Çalışır?

C++'da parametreli bir kurucu tanımlandığında, nesnenin işleyeceği veya içereceği değerleri veya ayrıntıları ve parametreleri tutan bir nesne başlatılır . Daha sonra argümanların o nesneye iletilmesi mümkün hale gelir. Prosedür, bir fonksiyona bir değer iletmeye çok benzer. Ayrıca, nesnelere parametreli değerlerin iletilmesiyle de benzerlik taşır.

Yapıcının gövdesinde tanımlanan nesneler, parametreler kullanılarak başlatılır. Parametreli bir kurucu bildirildiğinde, değerler yapıcı işlevine bağımsız değişkenler olarak iletilmelidir. Bu yapıcılar hem açık hem de örtük olarak çağrılabilir. Nesne bildiriminin geleneksel yolu çalışmıyor.

Not: Çağrı türleri-

  1. Açık çağrı- Örnek e1= Örnek(0,10)
  2. Örtük çağrı- Örnek e1(0,10)

Ödeme: Yeni Başlayanlar için C++'da Proje Fikirleri

C++'da Parameterized Constructor Kullanımı Nedir?

Parametreli yapıcıların kullanımları aşağıdaki gibidir:

  • Yapıcı aşırı yüklemesi
  • Başlatıldıklarında/oluşturulduklarında farklı nesnelerin çeşitli veri öğelerine farklı değerler atamak için kullanılır

Başka bir örnek:

1. Bir dikdörtgenin alanını hesaplayan program

#include <iostream>

ad alanı std kullanarak;

// bir sınıf bildiriyor

sınıf dikdörtgeni {

özel:

çift ​​uzunluk;

çift ​​genişlik;

halka açık:

// parametreli yapıcı oluşturma

dikdörtgen(çift len, çift brt) {

// özel değişkenleri başlat

uzunluk = uzunluk;

genişlik = brt;

}

çift ​​hesaplaAlan() {

dönüş uzunluğu * genişlik;

}

};

int ana() {

// nesneler oluşturma ve veri üyelerini başlatma

dikdörtgen rect1(10, 8.6);

dikdörtgen rect2(8.5, 6);

cout << “Dikdörtgenin alanı 1: ” << rect1.calculateArea() << endl;

cout << “Dikdörtgenin alanı 2: ” << rect2.calculateArea() << endl;

0 döndür;

}

Çıktı

Açıklama: Bu örnekte, double len ve double bdt olmak üzere iki parametreli parametreli bir yapıcı rectangle() oluşturduk. Bu parametreler, uzunluk ve genişlik üye değişkenlerini başlatmak için kullanılan değerleri içerir. Rectangle sınıfının bir nesnesini oluşturduğumuzda, üye değişkenlerin değerlerini argüman olarak iletiriz. Üye değişkenler başlatıldığında alanı hesaplaArea() işleviyle hesaplayabiliriz.

1. Öğrencilerin notlarının görüntülenmesi

#include <iostream>

ad alanı std kullanarak;

sınıf Öğrenci {

halka açık:

int std_id;//veri üyesi

string std_name;//ayrıca örnek değişkeni

float std_marks;

Öğrenci(int i, string a, float b)

{

std_id = ben;

std_name = a;

std_marks = b;

}

geçersiz ekran()

{

cout<<std_id<<” “<<std_name:<<” “<<std_marks <<endl;

}

};

int ana(boşluk) {

Öğrenci s1 =Öğrenci(101, “Soniya”, 89); // bir öğrenci nesnesi oluşturma

Öğrenci s2=Öğrenci(102, “Nakul”, 59);

s1.display();

s2.display(); 0 döndür;

}

Çıktı

Açıklama: id, ad ve işaretler veri üyeleridir (örnek değişkenleri de). Öğrenci parametreli bir yapıcıdır ve nesneleri ana sınıfta oluşturulur.

Dünyanın en iyi Üniversitelerinden çevrimiçi Yazılım geliştirme Kursları öğrenin . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.

Çözüm

Yapıcılar, değerleri iletebileceğimiz özel yöntemlerdir. Değerleri yapıcıya iletmezsek, son nesnenin bazı varsayılan değerleri vardır. [1] [MOU2] Nesneler, ana sınıfın parçası olan üye değişkenlerin yöntemlerini ve değerlerini tutar. Bu değerler sonunda yapıcılar aracılığıyla iletilir. C ++'da parametreli bir kurucu, farklı nesnelere farklı değerler atama avantajına sahiptir ve aşırı yükleme olabilir.

Artık C++'daki parametreli kurucuların farkında olduğunuza göre, daha derine inmek ve programlama kariyerinizde yükselmek istiyorsanız, Hindistan'ın en büyük çevrimiçi yüksek öğrenim şirketi upGrad'ın kurslarını keşfedin. Full-Stack Yazılım Geliştirme Programımızı kontrol etmelisiniz .

yapıcı nedir?

Constructor, sınıfla aynı ada sahip bir sınıftaki özel bir yöntemdir. Özeldir, çünkü bir sınıf oluşturulduğunda (örneklendiğinde) bu yöntem otomatik olarak çağrılır. Bir yapıcının argümanı yoksa, sınıf boş değerlerle başlatılır. Yapıcı, başlatma görevlerini gerçekleştirir ve sınıfın örnek değişkenlerini başlatır. Yapıcının temel amacı, nesnenin özelliklerinin değerlerini oluşturmaktır. Ayrıca, yalnızca bir kez yürütülmesi gereken herhangi bir işlemi gerçekleştirmek için de kullanılır. Yapıcı genellikle sınıfta bir genel statik olarak bildirilir ve nesne bu yapıcı kullanılarak oluşturulur.

Bir sınıfta kaç tane kurucu olabilir?

C++'dan bahsediyorsak, yapıcıların sayısı sınırsızdır. Ancak, makinenizin bellek sınırlaması, sınıfın karmaşıklığı vb. nedenlerle başka sınırlamalar olabilir. Bu nedenle, yapıcıların sayısı sınırsızdır, ancak yapıcı parametrelerinin sayısı değildir. Bir sınıfta istediğiniz kadar yapıcı olabilir. Ancak varsayılan kurucu bir zorunluluktur. Varsayılan yapıcısı olmayan herhangi bir sınıf soyut bir sınıftır. Soyut sınıf somutlaştırılamaz.

Nesne yönelimli programlama nedir?

Nesne yönelimli programlama, 'nesneleri' bir programın veya bilgisayar sisteminin temel yapı taşları olarak ele alan bir programlama paradigmasıdır. Nesneler, genellikle nitelikler olarak bilinen alanlar biçiminde veri içerebilen yazılım varlıklarıdır; ve genellikle yöntemler olarak bilinen prosedürler biçiminde kod. Nesne yönelimli programlama, erken programlama dillerinde yaygın olduğu gibi prosedürel mantık veya kontrol akışına odaklanmak yerine verilere ve onu çevreleyen kurallara odaklanır. OOP, verilerle tek tek öğelerden ziyade bir bütün olarak ilgilenir.