✏️ C++ Syntax

Bu derste C++ dilinin yazım kurallarını (syntax) göreceğiz.
Her programlama dilinde olduğu gibi C++ da kendine has kod yazım kurallarına sahiptir. Kod yazmaya başlamadan önce bu kuralları öğrenmeniz gerektiğinden bu derste C++ Sytnax konusunu işliyoruz.

1. Temel Kavramlar

C++ programlama dilinde temel kavramların anlamlarını öğrenerek başlayalım.
  • Nesne (Object): Nesneler durumlar ve davranışlara sahip olan varlıklardır. Örn: Personel bir nesne olabilir. Yaşı ve Cinsiyeti vardır. Belirli bir görevi yapar.
  • Sınıf (Class): Nesnelerin durum ve davranışlarını bir şablonda belirtmek için kullanılan nesneden bağımsız soyut yapılardır. Nesneler bu şablonlardan örneklenir.
  • Method: Temel olarak bir davranışı ifade eder. Bir sınıf bir çok methodu içerebilir. Verilerin işlendiği ve tüm eylemlerin yürütüldüğü bölümlerdir.
  • Özellikler (Instance Variables): Her nesne kendine özgü niteliklere sahiptir. Nesnelere ait durumlar tanımlanan bu niteliklerde tutulmaktadır.

2. C++ Program Yapısı

Her programlama dilinde olduğu gibi "Merhaba Dünya" ile dilin yapısını inceleyelim.
#include <iostream>
using namespace std;
// main() main programı çalıştıran ana metotdur.
int main() {
cout << "Merhaba Dünya"; //Ekrana merhaba dunya yazdırılır
return 0;
}
# ifadesi ile başlayan ifadeler C++’da önişlemci olarak bilinir. #include ile C++ için gerekli olan kütüphane bilgileri tanımlanır ve programa dahil edilir. <iostream> kütüphanesi temel işlemler için gerekli bir kütüphanedir.
using namespace std; (std değiştirilebilir) Nesne yönelimli programlama için Namespace tanımlaması yapmak için kullanılır. İsteğe bağlıdır. Yukarıda tanımlanmazsa kullanılan method ile tanımlanır.
main() program çalıştırmanın başladığı yerdir. Her C ++ programının main() olarak bilinen bir yöntemi olması gerekir. Bilgisayarınızdaki programın yürütülmesine başladığınızda uygulamanın giriş noktası olarak anılır. int kısmı yöntemin dönüş türüdür. Fonksiyon adından sonraki boş parantezler (), bunun bir fonksiyon olduğunu ve herhangi bir bağımsız değişken gerektirmediğini, başka bir deyişle, değerleri iletmek için hiçbir parametrenin olmadığını gösterir.
Ayrıca tek satırlık yorumlar // ile başlar ve satırın sonunda durur.
Sonraki satır cout << “Merhaba Dünya”; Ekranda Merhaba Dünya yazısını göstermek için kullanılır. Özetle ekrana cout << ile çıktılarınızı verebilirsiniz.
Son olarak da return 0; programı sonlandırmak için dönüş değeri 0 girilip sonlandırılır.

2. C++ Derleme ve Çalıştırma

C++ editörünüz ile yazdığınız kodları çalıştırabilmek için dosya uzantısını .cpp olarak kaydediniz. (Örn: test.cpp)
Bir komut istemi açın ve dosyayı kaydettiğiniz dizine gidin. Bunun için bulunduğunuz dizindeki pencerenin adres yerine cmd yazarak enterlayabilir veya direkt cmd üzerinden cd komutuyla ilgili dizine gidebilirsiniz. (Örn: cd Desktop)
Artık komut satırına aşağıdaki kodları yazarak programınızı derleyebilir ve aynı dizinde oluşacak olan .exe uzantılı dosyanız ile programınızı çalıştırabilirsiniz.
g++ test.cpp -o test.exe

3. Noktalı Virgüller ve Bloklar

C++ da ifadeler noktalı virgülle sonlandırılır. Yazılan her satırın sonuna noktalı virgül koymak gerekir.
a=10;
b=a;
kareAl(5);
Bloklar, süslü parantezler ile gösterilir ve mantıksal olarak kümelenmiş ifadeleri göstermek için kullanılır.
{
cout << "Merhaba Dunya";
return 0;
}

4. C++ Tanımlayıcılar

Bir C ++ tanımlayıcısı; bir değişken, işlev, sınıf, modül veya herhangi bir kullanıcı tanımlı ögeyi tanımlamak için kullanılan bir addır. Bir tanımlayıcı;
  • A’dan Z’ye veya a’dan z’ye Türkçe karakter olmayan harflerden,
  • Alt çizgi (_)
  • Sayılardan
oluşabilir.
C++, tanımlayıcılarda @, % gibi noktalama karakterlerine ve tanımlayıcı adının sayı ile başlamasına izin vermez. Ayrıca tanımlayıcı büyük küçük harf duyarlıdır. sayi1 ile Sayi1, SAYI1 tanımlamaları aynı değildir.
Örnek değişkenler;
  • Sayi1
  • _ad
  • ornek
  • Toplam
  • say10

5. C++ Anahtar Kelimeler

Aşağıdaki anahtar kelimeler C++ tarafından rezerve edilmiştir. C++’da tanımlayıcı yazarken bu anahtar kelimeler kullanılamaz.
asm
else
new
this
auto
enum
operator
throw
bool
explicit
private
true
break
export
protected
try
case
extern
public
typedef
catch
false
register
typeid
char
float
reinterpret_cast
typename
class
for
return
union
const
friend
short
unsigned
const_cast
goto
signed
using
continue
if
sizeof
virtual
default
inline
static
void
delete
int
static_cast
volatile
do
long
struct
wchar_t
double
mutable
switch
while
dynamic_cast
namespace
template