System::Object sınıfı
Object class
C#’ta System.Object sınıfı için mevcut olan yöntemlerin kullanılmasını sağlayan temel sınıf. Çevrilmiş ortamda kullanılan tüm önemsiz olmayan sınıflar bundan türemelidir.
class Object
Yöntemler
| Yöntem | Açıklama |
|---|---|
| virtual Equals(ptr) | C# Object.Equals semantiğini kullanarak nesneleri karşılaştırır. |
| static Equals(T1 const&, T2 const&) | Referans türü nesneleri C# tarzında karşılaştırır. |
| static Equals(T1 const&, T2 const&) | Değer türü nesneleri C# tarzında karşılaştırır. |
| static Equals(float const&, float const&) | IEC 60559:1989’a göre NaN’in hiçbir değere, NaN dahil, eşit olmamasına rağmen, iki NaN’in eşit kabul edildiği C# tarzı kayan nokta karşılaştırmasını taklit eder. |
| static Equals(double const&, double const&) | IEC 60559:1989’a göre NaN’in hiçbir değere, NaN dahil, eşit olmamasına rağmen, iki NaN’in eşit kabul edildiği C# tarzı kayan nokta karşılaştırmasını taklit eder. |
| virtual FastCast(const Details::FastRttiBase&, void **) const | Yalnızca dahili amaçlar için. |
| GetCounter() | Nesneyle ilişkili referans sayacı veri yapısını alır. |
| virtual GetHashCode() const | C# Object.GetHashCode() yönteminin benzeri. Özel nesnelerin hash’lenmesini sağlar. |
| virtual GetType() const | Nesnenin gerçek türünü alır. C# System.Object.GetType() çağrısının benzeri. |
| virtual Is(const TypeInfo&) const | Nesnenin targetType tarafından tanımlanan türün bir örneği olup olmadığını kontrol eder. C# ‘is’ operatörünün benzeri. |
| Lock() | C# lock() ifadesinin kilitlemesini uygular. Doğrudan çağırın veya LockContext gözcü nesnesini kullanın. |
| virtual MemberwiseClone() const | C# Object.MemberwiseClone() yönteminin benzeri. Özel türlerin klonlanmasını sağlar. |
| Object() | Nesneyi oluşturur. Tüm dahili veri yapılarını başlatır. |
| Object(Object const&) | Kopya kurucu. Gerçekte hiçbir şeyi kopyalamaz, sadece yeni nesneyi başlatır ve alt sınıfların kopya oluşturmasını sağlar. |
| operator=(Object const&) | Atama operatörü. Gerçekte hiçbir şeyi kopyalamaz, sadece yeni nesneyi başlatır ve alt sınıfların kopya oluşturmasını sağlar. |
| static ReferenceEquals(ptr const&, ptr const&) | Nesneleri referansla karşılaştırır. |
| static ReferenceEquals(T const&, T const&) | Nesneleri referansla karşılaştırır. |
| static ReferenceEquals(T const&, std::nullptr_t) | Değer türü nesneyi nullptr ile referans olarak karşılaştırır. |
| ReferenceEquals(String const&, std::nullptr_t) | Dize ve nullptr durumu için Object::ReferenceEquals özelleştirmesi. |
| ReferenceEquals(String const&, String const&) | Dizeler durumu için Object::ReferenceEquals özelleştirmesi. |
| RemovedSharedRefs(int) | Belirtilen değer kadar paylaşımlı referans sayacını azaltır. |
| virtual SetTemplateWeakPtr(uint32_t) | n’inci şablon argümanını zayıf bir gösterici (paylaşılan yerine) olarak ayarlayın. Kapsayıcılardaki göstericileri zayıf moda geçiş yapmayı sağlar. |
| SharedCount() const | Paylaşımlı referans sayacının mevcut değerini alır. |
| SharedRefAdded() | Paylaşımlı referans sayacını artırır. Doğrudan çağrılmamalıdır; bunun yerine akıllı işaretçiler veya ThisProtector kullanılmalıdır. |
| SharedRefRemovedSafe() | Paylaşımlı referans sayacını azaltır ve döndürür. Doğrudan çağrılmamalıdır; bunun yerine akıllı işaretçiler veya ThisProtector kullanılmalıdır. |
| virtual ToString() const | C# Object.ToString() metodunun benzeri. Özel nesnelerin dizeye dönüştürülmesini sağlar. |
| static Type() | C# typeof(System.Object) yapısını uygular. |
| Unlock() | C# lock() ifadesinin kilidini açmayı uygular. Doğrudan çağırın veya LockContext koruma nesnesini kullanın. |
| WeakRefAdded() | Zayıf referans sayacını artırır. Doğrudan çağrılmamalıdır; bunun yerine akıllı işaretçiler veya ThisProtector kullanılmalıdır. |
| WeakRefRemoved() | Zayıf referans sayacını azaltır. Doğrudan çağrılmamalıdır; bunun yerine akıllı işaretçiler veya ThisProtector kullanılmalıdır. |
| virtual ~Object() | Nesneyi yok eder. Tüm iç veri yapılarını serbest bırakır. |
Typedefs
| Typedef | Açıklama |
|---|---|
| ptr | Akıllı işaretçi türü için takma ad. |
Açıklamalar
C# System.Object sınıfında bulunan yöntemlerin yanı sıra, çevrilen kod ortamına özgü bazı kavramlar için de destek sağlar. Bu, akıllı işaretçi sınıfları (System::SmartPtr, System::WeakPtr, System::DynamicWeakPtr) tarafından kullanılan referans sayımını ve bellek yönetimi, hata ayıklama vb. ile ilgili diğer hizmetleri içerir.
Her Object iki referans sayacına sahiptir: paylaşımlı referans sayacı ve zayıf referans sayacı. Zayıf referans sayacı, referans verilen nesnenin üzerine çıkmasına izin veren, her zaman Object içinde değil ayrılmış bir veri yapısında depolanır. Akıllı referans sayacı, ENABLE_EXTERNAL_REFCOUNT makrosunun durumuna bağlı olarak ya nesnenin içinde ya da aynı ayrılmış yapıda depolanır. Varsayılan olarak, hata ayıklama derlemelerinde etkindir ve yayın derlemelerinde devredışıdır. Akıllı işaretçi sayacı nesnenin içinde depolanıyorsa, ayrılmış veri yapısı yalnızca nesneye zayıf işaretçiler mevcut olduğunda oluşturulur. Aksi takdirde, nesneyle birlikte oluşturulur.
Tüm akıllı işaretçiler bu iki referans sayacını kullanır ve aynı tek sahiplik grubuna katkıda bulunur.
Eğer Object alt sınıfı yığında oluşturulursa, ona yönelik akıllı işaretçi oluşturulamaz, aksi takdirde yığın silme sorunu ortaya çıkar.
Bu tür, yığında değer türü olarak ya da System::MakeObject() işleviyle yığında (heap) tahsis edilebilir. Nesne tahsis edildikten sonra, bu iki kullanım durumunu asla karıştırmayın: yığında tahsis edilen nesnelere SmartPtr işaretçileri sahip olmak kesinlikle yasaktır.
Ayrıca Bakınız
- Namespace System
- Library Aspose.Font for C++