pointers_to_members
C++ özel
Bir sınıf üyesi için bir işaretçi ilişkilendirilmiş sınıf tanımına önce bildirilmesi ve işaretçi boyutu ve işaretçiyi yorumlamak için gerekli kodu denetlemek için kullanılan belirtir.
#pragma pointers_to_members( pointer-declaration, [most-general-representation] )
Notlar
Siz yerleştirebilirsiniz bir pointers_to_members kullanmaya alternatif olarak, kaynak dosyanızdaki pragma /vmx derleyici seçenekleri veya devralma anahtar sözcükler.
İşaretçi bildirimi bağımsız değişkeni, bir işaretçi üye önce veya sonra ilişkili işlev tanımı bildirilen olup olmadığını belirler.İşaretçi bildirimi bağımsız değişken ise aşağıdaki iki simgelerden birini:
Bağımsız Değişken |
Comments |
---|---|
full_generality |
Güvenli, bazen nonoptimal kodunu üretir.Kullandığınız full_generality önce ilişkilendirilmiş sınıf tanımı herhangi bir üye işaretçisine bildirirseniz.Bu bağımsız değişkeni tarafından belirtilen işaretçi gösterimi her zaman kullanan en genel gösterimi bağımsız değişkeni./Vmg eşdeğer. |
best_case |
Tüm işaretçiler üyeleri için bunların gösterimi kullanılarak güvenli, en iyi kod üretir.Bir işaretçi sınıf üyesi bildirmek önce sınıfını tanımlama gerektirir.Varsayılan değer best_case. |
En genel gösterimi derleyici herhangi bir çeviri birimi cinsinden bir sınıf üyesi işaretçisine başvurmak için güvenle kullanabileceğiniz en küçük işaretçi gösterimi değişkeni belirtir.Bağımsız değişken aşağıdakilerden biri olabilir:
Bağımsız Değişken |
Comments |
---|---|
single_inheritance |
Tek miras, bir üye işlev işaretçisi en genel temsilidir.Şimdiye kadar ya da bir üye için bir işaretçi bildirilen kendisi için bir sınıf tanımının devralma modeli ise, bir hata neden birden çok veya sanal. |
multiple_inheritance |
Birden çok devralma, bir üye işlev işaretçisi en genel temsilidir.Üye için bir işaretçi bildirilen bir sınıf tanımının devralma modeli sanal ise bir hata neden olur. |
virtual_inheritance |
Sanal-devralma, bir üye işlev işaretçisi en genel temsilidir.Hiçbir zaman bir hata neden olur.Bu varsayılan bağımsız değişkendir, # pragma pointers_to_members(full_generality) kullanılır. |
![]() |
---|
Biz tutumunuzu koymak pointers_to_members sadece etkilenmesini istediğiniz kaynak kodu dosyası ve tüm sonra yalnızca pragma #include yönergeleri.Bu alıştırma pragma diğer dosyaları etkileyecek risk azalır ve yanlışlıkla olacak birden fazla tanımlarında aynı değişken, işlev veya sınıf adını belirtin. |
Örnek
// Specify single-inheritance only
#pragma pointers_to_members( full_generality, single_inheritance )