![]() |
|
|
|||||||
| Kayıt ol | Yardım | Üye Listesi | Ajanda | Arama | Bugünki Mesajlar | Bütün Forumları okunmuş kabul et |
| C ve C++ C ve C++ Hakkında Aradığınız Herşey.. C ve C++ Kodları.. |
![]() |
|
|
LinkBack | Seçenekler |
|
|
#4 (permalink) |
|
Mesajlar: n/a
|
SINIFLAR ve YAPILAR Belirli bir konu üzerine, sınırlı kavramlar kullanarak, küçük bir uygulama yazılacağı zaman genellikle sınıf veya yapı (class, structre) kullanılmasına gerek yoktur. Ancak projeler büyüdükçe, kavramlar çoğaldıkça, aynı kriterlere sahip objeler ortaya çıktıkça, kullanılacak kavramları sınıflandırmak gerekir. Sınıflandırma, gerçek yaşamda karşılaşılan kavramları Program diline dökmek konusunda programcıya üst düzeyde yardım sağlar. Bu bölümde sınıflar ve nesnelerin ne olduklarını, nasıl tanımlandıklarını, ne amaçla kullanıldıklarını ve bunlara bağlı üye fonksiyonları göreceğiz. Sınıf Nedir? Neden Sınıflandırmaya İhtiyaç Duyulur? Sınıf, içerisinde bir konuda kriter teşkil eden değişkenler barındıran, tip belirlemek amacıyla kullanılan, içerisindeki değişkenlere ancak o sınıf tipinde tanımlanmış bir nesnenin üyeleriyle ulaşılabilen bir tanımlamadır. Diğer bir değişle sınıf değişkenler koleksiyonudur. Bu değişkenler tanımlanışları dışında direkt olarak değer almazken, o sınıf tipinde tanımlanmış bir nesnenin özellikleri şeklinde, nesnenin üyeleri biçiminde değerler alabilirler. Sınıflar ve Üyeler Bir sınıf tanımlamak demek, yeni bir tip üretmak demektir. Sınıflar çeşitli değişkenler ve onlara bağlı olan fonksiyonlardan ibarettir. Bir konu üzerinde birden fazla yönde kriter belirlenebilir. Örneğin bir arabanın rengi, markası, modeli bir kriter oluşturabileceği gibi hızı, hareket yönü, ivmesi de bir kriter oluşturabilir. Sınıflandırma bütün bu özellikleri tek bir koleksiyonda toplamaya yarar. Bu şekilde oluşturulan değişken koleksiyonlarına nesne (obje) denir. Sınıflandırma sayesinde veriye ulaşmak, veriyi işlemek ve kopyalamak daha basit bir hale gelir. Programın içerisinde sınıfla ilgili işlem yapan program parçaları verinin ne olduğuna aldırmadan kolaylıkla işlem gerçekleştirebilir. Kriter olarak bir sınıfın içerisinde tanımlanan her bir değişkene ‘üye değişken’ ya da ‘üye veri’ denir. Arabanın lastiklerinin arabanın bir parçası olduğu gibi, üyeler de sınıfın birer parçasıdır. Bir sınıf içerisinde başka bir sınıf da kullanılabilir. Örneğin ‘arabanın lastiği’ bir sınıf olarak tanımlanabilir. Yol tutuşu, çapı, genişliği, dayanıklılığı gibi kriterlerden bir lastik sınıfı oluşturulabilir. Daha sonra, araba sınıfını tanımlarken, lastik tipi arabanın bir alt sınıfı olarak tanımlanabilir. Bu şekilde istenildiği kadar iç içe sınıf tanımlaması yapılabilir. Sınıfların içerisinde üye değişkenler tanımlanabildiği gibi üye fonksiyonlar da tanımlamak mümkündür. Bu fonksiyonlar, tanımlanmış olan sınıfla ilişkili olan fonksiyonlardır. Araba için gaz( ), fren( ), savrulma( ), yakıtAzalt( ) gibi fonksiyonlar araba sınıfının birer üye fonksiyonudur. Üye fonksiyonlara metotlar da denir. Metotlar, sınıfın nesnelerinin ne yapabileceğini belirlerler. Sınıf Tanımlama Sınıf tanımlarken kullanılan komut, sınıfın İngilizcesinden gelen ‘class’ komutudur. Komutun ardından sınıfın ismi yazılmak suretiyle bu isimde bir sınıf üretılmış olur. Sınıfın üye değişkenleri ve üye fonksiyonları da sınıfın isminin ardından açılıp kapanan küme parantezleri arasında kalan alanda tanımlanırlar. class Insan { unsigned int yas; unsigned int kilo; Yaslan( ); KiloAl( ); KiloVer( ); }; Bu örnekte ‘insan’ isminde bir sınıf tanımlanıyor. Yaş ve kilo değişkenleri tanımlandıktan sonra yaşlanmayı sağlayacak olan Yaslan( ) ve kilo alıp kaybetmeye yarayacak olan KiloAl( ), KiloVer( ) fonksiyonları tanımlanıyor. Sınıfların İsimlendirilmesi Daha önce değişken isimlendirmelerini öğrenmiştik. Sınıflar da isimlendirilirken aynı kurallar geçerlidir. Ancak sınıflar bir ‘tip’ teşkil ettiğinden ayırt edici olması amacıyla ya ilk harfi ya da tamamen büyük harf kullanılarak isimlendirilirler. ‘insan’ yerine ‘Insan’ ya da ‘INSAN’ gibi. Birçok programcının kullandığı bir diğer isimlendirme yöntemi de sınıf isminin başına ‘class’ kelimesini temsilen bir ‘c’ harfi koymaktır. ‘cInsan’, ‘cAraba’, ‘cKedi’ gibi. Fakat diğer sınıf isimlendirmelerinin de bilinmesi farklı programcıların yazdığı programları incelerken faydalı olacaktır. Metotlar yani üye fonksiyonlar isimlendirilirken de bütün kelimelerin ilk harflerini büyük harf olarak yazmak kullanışlı bir yöntemdir. GazPedalinaBas( ), FrenYap( ) gibi. Nesne (Obje) Tanımlama Sınıf tanımlama örneği olarak gördüğümüz ‘Insan’ sınıfı, bu sınıfı kullanarak bir nesne tanımlamadığımız sürece programın içerisinde yalnızca yer kaplayacaktır. Sınıflar program içerisinde ‘int’, ‘float’ gibi yalnızca bir tip olarak yer alırlar. Onları işe yarar hale getirmek için bir tanımlama yapmak gerekir. int x; float m; Insan Ali; Bu program parçası ‘x’ isimli bir tamsayı, ‘m’ isimli bir ondalıklı sayı ve ‘Ali’ isimli bir insan tanımlar. Sınıflarla Nesnelerin Karşılaştırılması Gerçek yaşamda arabanın tanımı alınmaz, arabanın kendisi alınır ve kullanılır. Arabanın tanımının benzini bitmez, kullanılmakta olan arabanın benzini biter. Aynı şekilde C++’da da bir ‘Araba’ sınıfı üretılırken arabaların genel özellikleri ve başlarına gelebilecek olaylar düşünülerek bir sınıf oluşturulur. Ancak asla bu ‘Araba’ sınıfı kullanılmaz, ‘Araba’ sınıfıyla tanımlanan özel bir araba nesnesi kullanılır ve olaylar bu nesnenin üzerinde gelişir. Sınıf Üyelerine Erişim Yukarıda teorik olarak gösterdiğimiz açıklamayı C++ diline çevirelim. class Insan { unsigned int yas; unsigned int kilo; Yaslan( ); KiloAl( ); KiloVer( ); }; Insan Ali; Ali.yas = 19; Görüldüğü gibi sınıfların üyelerine erişmek için nesneleri kullanmak zorundayız. Nesnenin tanımlandığı sınıfa ait bir üye değişken ya da üye fonksiyona ulaşmak için nesne tanımlandıktan sonra nesneye verilen ismin arkasına nokta konularak değişken ya da fonksiyonun adı yazılır. class Insan { unsigned int yas; unsigned int kilo; Yaslan( ); RejimYap( ); KiloAl( ); KiloVer( ); }; Insan Ali; Ali.yas = 20; Ali.kilo = 70; Ali.Yaslan( ); Ali.KiloAl( ); Ali.RejimYap( ); Ali.KiloVer( ); Bu örnekte Ali’nin yaşlandıkça kilo aldığı ve aldığı kiloları rejim yaparak verdiği varsayılmış ve fonksiyonlar buna göre tanımlanmıştır. Sınıfları kullanarak C++’da bu tür gerçek yaşam kompozisyonları yazmak mümkündür. Sınıfların sağladığı en büyük yararlardan biri programın okunabilirlik seviyesini arttırmasıdır. Bu örnekteki gibi düzgün sınıf, değişken ve fonksiyon isimleri seçildiği taktirde programı incelemek kitap okumak kadar kolay bir hal alır. [Linkleri Ve Forumun Tam İçeriğini Sadece kayıtlı üyelerimiz görebilir. GirBuraya.Net´in ÜCRETSİZ Üyesi oLmak için Hemen TIKLAYINIZ] |
|
![]() |
| Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| Seçenekler | |
|
|
Benzer Konular
|
||||
| Konu | Konuyu Başlatan | Forum | Cevaplar | son Mesaj |
| FTP Nedir? Kullanımı, Komutları Nelerdir? | Zebani | Sistem ve İnternet Araçları | 0 | 03-23-08 05:05 |
| Parfüm Nedir Ve Kullanımı | Aydanur | Kadınca | 0 | 03-20-08 02:28 |
| MSN Spaces Alanınız İçinde Scrollbar Kullanımı | Zebani | Msn Spaces | 0 | 03-20-08 01:54 |
| Prezervatif Kullanımı | Pepsi | Cinsellik ve Erkek | 2 | 01-18-08 21:29 |
| Fonksiyon(Function) Kullanımı | Sanal | Asp | 0 | 12-25-07 00:35 |
mirc
mırc
sohbet
chat
çet
sohbet
chat
canlı tv