SORU
27 NİSAN 2010, Salı


Arama yapmadan yeni c kurucular

İnsanlar C kullanarak nesneleri oluşturmak o kadar sık gördüm

Thing myThing("asdf");

Bunun yerine:

Thing myThing = Thing("asdf");

Bu şablonlar vardır Hayır olarak (gcc kullanarak), en azından uzun bir iş gibi görünüyor. Şimdi benim sorum, ilk satır doğru olur mu kullanmalıyım?

CEVAP
27 NİSAN 2010, Salı


Her iki hattın aslında doğru ama kurnazca farklı şeyler.

İlk satır biçiminde bir kurucu Thing(const char*) çağırarak yığında yeni bir nesne oluşturur.

İkincisi biraz daha karmaşık. Aslında şunları yapar

  1. Türünde bir nesne Thing kurucu Thing(const char*) kullanarak oluşturun
  2. Türünde bir nesne Thing kurucu Thing(const Thing&) kullanarak oluşturun
  3. Çağrı nesne adımda oluşturduğunuz ~Thing() #1

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Hak5DarrensVlog

    Hak5DarrensV

    11 EYLÜL 2009
  • Semantic Mastery

    Semantic Mas

    30 EKİM 2013
  • Skittles Page

    Skittles Pag

    28 Mart 2011