Friend Function

Bu makalede C++ programlama dilindeki friend function olayından bahsedeceğim. Bir class içerisinde friend function olarak belirtilen bir fonksiyon bu class’ın private data member ve private member function ’larına erişebilir. Aslında friend function, C++ temelinde yatan information hiding olayına tamamen ters bir mevzudur bu nedenle C++ dilinde kodlama yapan bir çok uzman bu olaya itiraz etmektedirler. İsterseniz bir örnekle friend function olayına göz atalım.




Örnekte görüldüğü gibi accessPrivate fonksiyonu Sample class ’ının scope ’u içerisinde değil ama p private data member ’ına dışardan erişebiliyor. Yazılabilecek herhangi bir fonksiyon class içerisinde friend olarak belirtilirse o class ’ın tüm private değerlerini istediği şekilde değiştirebilir. Oysaki private değerler dış dünyadan saklanan değerlerdi. Bu nedenle friend function C++ güvenliğini ihmal eden bir konudur fakat basit programlamada en çok işe yarayan kısmı ise << ve >> operatorlerini overload ederek kendi class object ’mizi cout ile yazıp içerisine cin ile değer alabilmemizi sağlamasıdır.

Popular posts from this blog

Polya’nın Problem Çözme Teknikleri

Mikroislemci Temelleri