System::Object sınıfı
Object class
Temel sınıf, C#’ta System.Object sınıfı için mevcut olan yöntemlerin kullanılmasını sağlar. Ç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&) | C# tarzında referans türü nesnelerini karşılaştırır. |
| static Equals(T1 const&, T2 const&) | C# tarzında değer türü nesnelerini karşılaştırır. |
| static Equals(float const&, float const&) | IEC 60559:1989’a göre NaN’in herhangi 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 herhangi 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özetleme 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 yapıcı. Gerçekte hiçbir şeyi kopyalamaz, sadece yeni nesneyi başlatır ve alt sınıfların kopya yapımı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 yapımı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) | Referans, değer türü nesneyi nullptr ile karşılaştırır. |
| ReferenceEquals(String const&, std::nullptr_t) | String ve nullptr durumları için Object::ReferenceEquals özel uygulaması. |
| ReferenceEquals(String const&, String const&) | Stringler durumu için Object::ReferenceEquals özel uygulaması. |
| RemovedSharedRefs(int) | Paylaşılan referans sayacını belirtilen değer kadar azaltır. |
| virtual SetTemplateWeakPtr(uint32_t) | n’inci şablon argümanını zayıf bir işaretçi olarak ayarla (paylaşılan yerine). Kapsayıcılardaki işaretçilerin zayıf moda geçişine izin verir. |
| SharedCount() const | Paylaşılan referans sayacının mevcut değerini alır. |
| SharedRefAdded() | Paylaşılan 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şılan 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() yönteminin 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 kilit açma işlevini uygular. Doğrudan çağırın veya LockContext gözcü 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ın da desteklenmesini sağlar. Buna akıllı işaretçi sınıfları (System::SmartPtr, System::WeakPtr, System::DynamicWeakPtr) tarafından kullanılan referans sayımı ve bellek yönetimi, hata ayıklama vb. ile ilgili diğer hizmetler dahildir.
Her Object iki referans sayacına sahiptir: paylaşılan referans sayacı ve zayıf referans sayacı. Zayıf referans sayacı, referans verilen nesnenin üzerine çıkabilen zayıf işaretçilere izin vermek için, 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, 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, nesnenin yanında oluşturulur.
Tüm akıllı işaretçiler bu iki referans sayacını kullanır ve aynı tek sahiplik grubuna katkıda bulunur.
Object alt sınıfı yığında (stack) oluşturulursa, ona yönelik akıllı işaretçi oluşturulamaz, aksi takdirde yığın silme sorunu ortaya çıkar.
Bu tip, değer türü olarak yığında (stack) 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 yönelik SmartPtr işaretçileri kullanmak kesinlikle yasaktır.
Ayrıca Bakınız
- Namespace System
- Library Aspose.Page for C++