Skip to content

Instantly share code, notes, and snippets.

@mrnirva
Last active January 1, 2021 16:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mrnirva/083df045d5e6c7508a03ba018aa61362 to your computer and use it in GitHub Desktop.
Save mrnirva/083df045d5e6c7508a03ba018aa61362 to your computer and use it in GitHub Desktop.
// Passing By Reference (Call by Reference) - Passing By Pointer (Call by Pointer) Örneği
// Parametrede sayı referansını oluşturup kullanıyoruz
void referanslaDegerDegistir(int &sayi){
sayi = 10; // Sayının referansıyla yeni değer ataması yapıyoruz
}
// Parametrede pointer oluşturup kullanıyoruz
void pointerlaDegerDegistir(int *sayi2){
*sayi2 = 10; // Sayıya bellekteki adresiyle ulaşarak yeni değer ataması yapıyoruz
}
int main(){
int sayi = 5; // int tipinde normal bir sayı değişkeni oluşturuyoruz
int sayi2 = 5; // int tipinde normal bir sayı değişkeni oluşturuyoruz
referanslaDegerDegistir(sayi); // Sayının değerini değiştirmek için metoda yolluyoruz
pointerlaDegerDegistir(&sayi2); // Sayı 2'nin değerini pointerla değiştirmek için yolluyoruz
std::cout << sayi << endl; // Sayının son değerini yazdırıyoruz (10 Değerini Verecektir)
std::cout << sayi2 << endl; // Sayı 2'nin son değerini yazdırıyoruz (10 Değerini Verecektir)
// Her ikiside aynı performansa sahiptir
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment