«incomplete-type» etiketlenmiş sorular

6
std :: unique_ptr ile eksik tip derlenmez
Ben pimpl-deyim ile kullanıyorum std::unique_ptr: class window { window(const rectangle& rect); private: class window_impl; // defined elsewhere std::unique_ptr<window_impl> impl_; // won't compile }; Ancak, eksik bir tür kullanımı ile ilgili derleme hatası alıyorum, satır 304 <memory>: ' sizeof' Eksik bir tür ' uixx::window::window_impl' için geçersiz uygulama Bildiğim kadarıyla, std::unique_ptreksik tip …

1
Clang, bir sınıf şablonunun iç içe sınıfının yalnızca uzmanlıklar aracılığıyla tanımlandığı kodu reddetmek için doğru mu?
Aşağıdaki sınıf şablonu verildiğinde: template<typename T> struct Outer { struct Inner; auto f(Inner) -> void; }; Innerher uzmanlık alanı için ayrı ayrı tanımlarız Outer: template<> struct Outer<int>::Inner {}; template<> struct Outer<double>::Inner {}; ve ardından aşağıdaki ftüm uzmanlıklar için üye işlevini bir kez tanımlayın Outer: auto Outer<T>::f(Inner) -> void { } …

2
T'nin std :: declval <T> `de kullanılacak tam bir tür olması gerekir mi?
Bu örneği düşünün ( buradan geliyor ): #include &lt;type_traits&gt; #include &lt;iostream&gt; template &lt;typename U&gt; struct A { }; struct B { template &lt;typename F = int&gt; A&lt;F&gt; f() { return A&lt;F&gt;{}; } using default_return_type = decltype(std::declval&lt;B&gt;().f()); }; int main() { B::default_return_type x{}; std::cout &lt;&lt; std::is_same&lt; B::default_return_type, A&lt;int&gt;&gt;::value; } Bu gcc9.2 …

1
Eksik bir türün işaretçisi eksik olabilir mi?
Can int (*)[]tamamlanmamış bir tür olabilir mi? C 2018 6.2.5 1 diyor ki: Bir çeviri birimindeki çeşitli noktalarda bir nesne türü eksik (o türdeki nesnelerin boyutunu belirlemek için yeterli bilgiye sahip olmayabilir ) veya tam (yeterli bilgiye sahip) olabilir. Dolayısıyla, bir türün boyutu biliniyorsa, türün tamamlanmış olduğu görülmektedir. 6.2.6.1 28, …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.