SORU
27 HAZİRAN 2011, PAZARTESİ


Ne kadar güvenilir bir nesnenin adresi alabilir miyim?

Aşağıdaki programı deneyin:

struct ghost
{
    // ghosts like to pretend that they don't exist
    ghost* operator&() const volatile { return 0; }
};

int main()
{
    ghost clyde;
    ghost* clydes_address = &clyde; // darn; that's not clyde's address :'( 
}

Nasıl clyde'in adresi alabilirim?

Aynı zamanda nesnelerin her türlü için çalışacak bir çözüm arıyorum. C 03 bir çözüm iyi olurdu, ama C 11 çözümleri çok ilgileniyorum. Mümkünse, uygulama özgü herhangi bir davranış uzak duralım.

C 11 std::addressof şablon işlevi, ama burada kullanılması ile değilim farkındayım: Standart Kitaplık bir uygulayıcı bu işlev şablonu. uygulamak nasıl anlamak istiyorum

CEVAP
27 HAZİRAN 2011, PAZARTESİ


Aslında, bir-char referans olarak nesneyi yeniden yorumlama, adresini (aşırı aramıyor al ve işaretçi geri türünde bir işaretçi çevirebilirsiniz.

Destek.AddressOf kodu, volatile ek bakım ve const yeterlilik alarak bu tam olarak yok.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MandMEvangelists

    MandMEvangel

    28 Ocak 2008
  • Subscribe!!

    Subscribe!!

    3 EKİM 2009
  • Vicious Computers

    Vicious Comp

    14 EKİM 2006