2014-09-11 34 views
15

Qt'de programlama yaparken Qt uygulamasına mümkün olduğunca gitmeyi seviyorum. Gördüğüm kadarıyla std::unique_ptr'un Qt versiyonu yok mu ya da var mı?C++ Qt std :: unique_ptr Qt sürümü nerede?

Eğer mevcut değilse Qt'de "aynı" sonucu üreten alternatifler neler olabilir?

+0

Niçin özellikle bir Qt sürümünü istiyorsunuz? Standart bir kütüphane olmadan C++ yazmaya çalışıyor musunuz? –

+2

'QScopedPointer' –

+1

@MikeSeymour özellikle değil ama Qt uygulaması her şeyi kapsadığında Qd ile std'yi karıştırmaya gerek yok :) – deW1

cevap

24

std::unique_ptr için Qt karşılığı QScopedPointer'dur.

C++ 03 std::auto_ptr (Why is auto_ptr being deprecated?) hizmetine daha yakın hale getirerek, taşıma anlambilimini desteklemediği için önemli ölçüde daha az kullanışlıdır.

+2

'QScopedPointer', auto_ptr gibi bozuk değil mi? Kopyalama ve atama üzerinde sahipliğini aktarmaz, yalnızca kopyalamayı ve atamayı desteklemez. (Belgeleme, belgelerin okunması) –

+0

@Benjamin Lindley aslında, bir kurucu bile yok, bir kopya kurucu yok. – ecatmur

+0

TBH'de, auto_ptr'nin sahip olmadığı özel silme makineleri var. – MSalters