Aracılığıyla paylaş


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.

Uyarı notuUyarı

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 )

Ayrıca bkz.

Başvuru

Pragma yönergeleri ve anahtar sözcük __Pragma