privateüye verileri için tercih edilir. C ++ sınıflarındaki üyeler privatevarsayılan olarak vardır.
publicüye işlevleri için tercih edilir, ancak bu bir görüş meselesidir. En azından bazı yöntemlere erişilebilir olmalıdır. publicherkese açıktır. En esnek ve en az güvenli seçenektir. Onları herkes kullanabilir ve herkes onları kötüye kullanabilir.
privateerişilemez. Kimse onları sınıf dışında kullanamaz ve kimse onları kötüye kullanamaz. Türetilmiş sınıflarda bile.
protectedbir uzlaşmadır çünkü türetilmiş sınıflarda kullanılabilir. Bir sınıftan türettiğinizde, temel sınıfı iyi anlarsınız ve bu üyeleri kötüye kullanmamaya dikkat edersiniz.
MFC, Windows API için bir C ++ sarmalayıcısıdır publicve tercih eder protected. Visual Studio tarafından oluşturulan Sınıflar çirkin bir karışımı var Sihirbazı protected, publicveprivate üyeleri. Ancak MFC sınıflarının kendileri için bir mantık var.
Üye gibi SetWindowTextolan publicsık sık bu üyeleri erişmek gerekir çünkü.
OnLButtonDownPencereden alınan bildirimleri işlemek gibi üyeler . Bunlara erişilmemelidir, bu yüzden erişirler protected. Bu işlevleri geçersiz kılmak için bunlara yine de türetilmiş sınıfta erişebilirsiniz.
Bazı üyeler ileti dizileri ve ileti döngüleri yapmak zorundadır, erişilmemeli veya geçersiz kılmamalıdır, bu nedenle private
C ++ yapılarında, üyeler publicvarsayılan olarak vardır. Yapılar genellikle sadece veriler için kullanılır, yöntemler için kullanılmaz, bu nedenle publicbildirim güvenli kabul edilir.