15 MART 2017
ÇARŞAMBA
13.24
C++ Sabitler

Sabitler, sabit bir değere eşittirler. Bu konumuzda sabitleri ele alacağız ve detaylandıracağız. Başlayalım.

 

Sabitler

Sabitler, programda belirli bir değere sahip değişkenlerdir. Program boyunca bu değeri hafızasında tutacak ve hep kullanacaktır. Bu sebeple yazıldıkları yer bakımından da işlev bakımından da değişkenlerden biraz farklıdırlar.

#include <iostream>
using namespace std;

const double pi = 3.14159;

int main ()
{
  double r = 2.0;
  double daireAlani;

  daireAlani = pi * r * r; // pi r kare
  cout << daireAlani;
}

Yukardaki kodumuzu inceleyelim.

const double pi = 3.14159;

Bu alanı nereye yazdığımıza dikkat edin. Programda main fonksiyonumuzun dışındaki alana girdiğimiz pi sabitini artık programımızın her alanında kullanabiliriz. Pi ifadesi değişmez bir değere eşittir. Bizde hazırladığımız daire alanını bulma programımızda pi sabitine ihtiyaç duyacağız. Bu sebeple pi sabit değerini programımıza bir sabit olarak tanıtmamız gerekti ve const ifadesini (ingilizce de constant) başlangıca ekleyerek veri tipi ve sabit adını girip, bir değişken gibi 3.14159 değerine eşitledik. Bu alandan sonra yer alan tüm işlemler standart C++ kod yapımıza ait işlemlerdir ve basit bir formül ile daire alanımızı bulmamızı sağlar. 

define Methodu

Bir sabit gibi düşünebiliriz fakat anlaşıldığı üzere bir tanım istemektedir (define = tanımlamak). Bu sebeple ne bir sabit gibi ne de bir değişken gibi çalışır. İkisinin aksine yapısı oldukça farklıdır. Aşağıdaki örneğimizi inceleyelim;

#include <iostream>
using namespace std;

#define pi 3.14159

int main ()
{
  double r = 2.0;
  double daireAlani;

  daireAlani = pi * r * r; // pi r kare
  cout << daireAlani;
}

#define pi 3.14159

pi adında oluşturduğumuz bir sabiti 3.14159 olarak tanımladık. Program içerisinde artık pi'yi bir değişken gibi çağırarak kullanabiliriz.

define ve const methodlarının farkı nedir?

define methodu bir önişlemci gibi davranır. Yani herhangi bir derleme işlemine girmez ve kodda yeniden aranır. Const ise gerçek bir değişken gibi davrandığı için tüm işlemler rahatlıkla gerçekleştirilir. Temelde ikisi de aynı işi yapar ve hatta ikisi de birbirinden neredeyse farksızdır diyebiliriz. Lakin hata derleyicileri bir program için oldukça önemlidir ve const bir değişken olarak davrandığından dolayı bu alanda size avantaj sağlayacaktır. Bunun dışında basit işlemlerde olmasa bile kompleks yapılı işlemlerde define methodunda problemlerin yaşandığı söylenmektedir. Bu sebeple C++ programlama dilinde tercih edilmesi gerekenin const olduğunu yazılımcılar dile getirmektedir.

YORUMLAR 1
2
Aydı yavuz KÜÇÜKATEŞ
21 AĞUSTOS 2019 - 18.35
Gördüğüm en iyi C++ dersi kesinlikle anlatım muhteşem çok teşekkürler.
CEVAPLA
0
Mert Topuz
21 AĞUSTOS 2019 - 19.13
Değerli düşünceniz için çok teşekkürler :)
YORUM BIRAK
Şuanda bu yoruma cevap yazıyorsunuz:
İptal Et