Uzman Üye
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]C++ (
Bağlantıları görmek için lütfen
Giriş Yap
okunuşu: ce artı artı,
Bağlantıları görmek için lütfen
Giriş Yap
okunuşu: si plas plas), Bell Laboratuvarlarından
Bağlantıları görmek için lütfen
Giriş Yap
tarafından
Bağlantıları görmek için lütfen
Giriş Yap
yılından itibaren geliştirilmeye başlanmış,
Bağlantıları görmek için lütfen
Giriş Yap
'yi kapsayan ve çok paradigmalı, yaygın olarak kullanılan, genel amaçlı bir
Bağlantıları görmek için lütfen
Giriş Yap
. İlk olarak C With Classes (Sınıflarla C) olarak adlandırılmış, 1983 yılında ismi C++
Bağlantıları görmek için lütfen
Giriş Yap
olarak değiştirilmiştir.[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]Genel olarak her C programı aynı zamanda bir C++ programıdır, ancak her C++ programı bir C programı değildir. Bu durumun bazı istisnaları mevcuttur. C++'ı C'den ayıran özellikler C++'ın nesne paradigması kullanılarak programlamaya olanak tanıyan özelliklerdir.
Bağlantıları görmek için lütfen
Giriş Yap
sayesinde yeni veri türleri yaratılabilir veya varolan türlerden yenileri türetilebilir. Ayrıca
Bağlantıları görmek için lütfen
Giriş Yap
sayesinde bir sınıf tanımıyla yazılmış kod, o sınıf türünden türetilmiş yeni sınıflarla da çalışabilir.[/FONT][/FONT][font='Trebuchet MS', Helvetica, Arial, sans-serif]C++ dilini öğrenmek ve daha fazla bilgi edinmek için bu maddenin Kaynaklar kısmına bakabilirsiniz.[/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]Yordamsal Altyapı[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]İşleçler
C++'ın C'den devraldığı ve onu geliştirdiği yapılardan biridir. Kısaca, özel olarak anlamlandırılmış fonksiyonlar kümesidir. Ancak bu fonksiyonlar, alışılageldik şekilde çağırılmaz, dilin semantik yapısı içerisinde özel olarak değerlendirilir. operatörler çoğunlukla iki nesnenin arasına özel bir işaret konulmasıyla çağırılır. Örneğin, iki nesnenin toplanması için iki nesnenin arasına '+' işareti konulması yeterlidir. Bu işaret, derleyiciye '+' operatör fonksiyonunun çağırılacağını ifade eder. C'den farklı olarak, C++'ta operatörlerin çoğunu aşırı yükleme yoluyla özelleştirebilirsiniz.[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]Önişlemci
[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]C++ Program kaynak kodlarının derlenmesi üç aşamadan oluşur: Önişlemci, kodun dönüştürülmesi ve bağlama. İlk aşama olan önişlemciyi basit bir yorumlayıcı olarak görülebilir. Bu aşamada, bir takım direktifler yardımıyla derlenecek kodlarda basit sözcüksel değişiklikler yapılabilir.[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]Önişlemci direktifleri # karakteriyle başlar, bu karakterden sonrası önişlemci tarafından yorumlanır ve bu özel karakterden önce beyaz boşluk(tab ve boşluk) dışında bir şey olmaması gerekir. Bu direktifler yardımıyla derlenecek kodlar üzerinde bir takım kurallar belirlenebilir. Ayrıca dosyaya bir başka dosyayı dahil etmek veya işlemciye özel direktifler vermek gibi işlemler içinde kullanılabilir.[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif][font='Linux Libertine', Georgia, Times, serif]Nesne Paradigması[/FONT][/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif][font='Linux Libertine', Georgia, Times, serif]Sınıflar ve Nesneler[/FONT][/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]Sarmalama[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]Kalıtlama[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]Kalıtlama diğer veri türlerinin özelliklerinden bir veri türü elde etmeyi sağlar. Temel sınıftan kalıtım, "public", "protected" ve "private" olarak ilan edilebilir. Bu erişim belirteci ilgili olmayan ve türetilmiş sınıfların kalıtımını "public" ve "protected" üyelerine aktarabilir. Kalıtım ifadesi tek başına kullanılırsa "public" kalıtımı ifade eder. Diğer iki kalıtım türü "public" kalıtımdan daha az kullanılır. Geçiş belirteci ihmal edilirse "class" "private" olarak, "struct" "public" olarak kalıtılır. Temel sınıflar sanal olarak ilan edilebilir, bu sanal kalıtım olarak adlandırılır. Sanal kalıtım çoklu kalıtımın problemlerinden sıyrılarak temel yalnızca bir örneğinin kalıtım grafiğinde olmasını sağlar.[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif][font='Linux Libertine', Georgia, Times, serif]Çokbiçimlilik[/FONT][/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Linux Libertine', Georgia, Times, serif]Örnekler[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]PHP Kod:[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Kod:[/FONT]
Kod:
//Bu tek satırlık bir C++ yorumudur.
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]PHP Kod:[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Kod:[/FONT]
Kod:
/*
Bu
Çok
Satırlı
Bir
C++ Yorumudur.
*/
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Merhaba Dünya 1[/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]PHP Kod:[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Kod:[/FONT]
Kod:
# include <iostream>
using namespace std;
int main ()
{
cout << "!!Merhaba Dunya!!" << endl;
return 0;
}
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Merhaba Dünya 2[/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Nesne yaklaşımlı merhaba dünya örneği:[/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]PHP Kod:[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Kod:[/FONT]
Kod:
# include <iostream>
using namespace std;
class Dunya
{
public:
Dunya () { cout << "Merhaba\n"; }
~Dunya () { cout << "Güle güle\n";}
};
int main ()
{
Dunya (); //bu_bir_nesne;
return 0;
}
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]İşleçleri Aşırı Yükleme (DOS ya da Process Prompta) :[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif][font='Open Sans', Tahoma, Verdana, Arial, sans-serif]PHP Kod:[/FONT][/FONT]
[font='Trebuchet MS', Helvetica, Arial, sans-serif]Kod:[/FONT]
Kod:
# include <iostream>
# include <header.h>
using namespace std;
int main ()
class Karmasik
{
public:
Karmasik (double reel, double sanal = 1)
: reel_ (reel), sanal_ (sanal)
{}
Karmasik& operator+= (Karmasik const & );
Karmasik operator+ (Karmasik, Karmasik const & );
void Yazdir () const;
private:
double reel_, sanal_;
};
Karmasik& Karmasik::operator+= (Karmasik const & diger)
{
reel_ += diger.reel_;
sanal_ += diger.sanal_;
return %d;
}
Karmasik operator+ (Karmasik birinci, Karmasik const & ikinci)
{
return birinci += ikinci;
}
void Karmasik::Yazdir () const
{
case;
{
cout << "reel = " << reel_ << '\n' << "sanal = " << sanal_
<< '\n';
}
break;
}
int main()
{
Karmasik ilk (1, 1), ikinci (5, 1.7), sonuc(1, 7);
sonuc = ilk + ikinci;
sonuc.Yazdir ();
return 0;
}