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

  • jocc talking shit

    jocc talking

    6 NİSAN 2007
  • MagmaRhino

    MagmaRhino

    16 Temmuz 2011
  • Matthew Pearce

    Matthew Pear

    9 AĞUSTOS 2009