«c++11» etiketlenmiş sorular

C ++ 11 olarak derlenmesi gereken kod için bu etiketi kullanın (C ++ 14 veya sonraki sürümlerde sunulan hiçbir özelliği kullanmayın).


10
C ++ 0x semafor yok mu? Konuları nasıl senkronize edebilirim?
C ++ 0x semaforlar olmadan gelecek doğru mu? Semafor kullanımıyla ilgili olarak Stack Overflow ile ilgili bazı sorular var. Onları (posix semaforları) her zaman bir iş parçacığı başka bir iş parçacığında bazı olay için beklemek izin kullanın: void thread0(...) { doSomething0(); event1.wait(); ... } void thread1(...) { doSomething1(); event1.post(); ... …

16
Bir sınıfın belirli bir imzanın üye işlevine sahip olup olmadığını kontrol edin
Bir sınıfın belirli bir imzanın belirli bir üye işlevine sahip olup olmadığını tespit etmek için bir şablon numarası istiyorum. Sorun, http://www.gotw.ca/gotw/071.htm burada alıntılanana benzer, ancak aynı değildir: Sutter'ın kitabının maddesinde, bir C sınıfının, belirli bir imza, aksi takdirde program derlemez. Benim problemimde, bir sınıfın bu işlevi varsa bir şeyler yapmam …
135 c++  c++11  templates  sfinae 

1
Vadeli İşlemler ve Vaatler
Kendimi bir gelecek ile söz arasındaki farkla karıştırıyorum. Açıkçası, farklı yöntemleri ve malzemeleri var, ancak gerçek kullanım durumu nedir? Bu mu?: eşzamansız bir görevi yönetirken, "gelecekte" değeri elde etmek için geleceği kullanırım Eşzamansız görev olduğumda, kullanıcının sözümden bir gelecek elde etmesini sağlamak için dönüş türü olarak söz veriyorum
135 c++  c++11  promise  future 

3
Packaged_task ve async arasındaki fark nedir
C ++ 11'in iş parçacıklı modeliyle çalışırken, şunu fark ettim: std::packaged_task<int(int,int)> task([](int a, int b) { return a + b; }); auto f = task.get_future(); task(2,3); std::cout << f.get() << '\n'; ve auto f = std::async(std::launch::async, [](int a, int b) { return a + b; }, 2, 3); std::cout << …

6
Bir std :: unique_ptr üyesiyle özel bir siliciyi nasıl kullanabilirim?
Unique_ptr üyesi olan bir sınıfım var. class Foo { private: std::unique_ptr<Bar> bar; ... }; Bar, create () işlevi ve destroy () işlevi olan üçüncü taraf bir sınıftır. Onunla std::unique_ptrbağımsız bir işlevde kullanmak isteseydim şunları yapabilirdim: void foo() { std::unique_ptr<Bar, void(*)(Bar*)> bar(create(), [](Bar* b){ destroy(b); }); ... } Bunu std::unique_ptrbir sınıfın …


1
-Std = c ++ 11 ve -std = gnu ++ 11 arasındaki farklar nelerdir?
Gcc ve clang için derleme parametresi olarak -std=c++11ve arasındaki farklar nelerdir -std=gnu++11? İle aynı soru c99ve gnu99? C ++ ve C standartlarını biliyorum, beni ilgilendiren parametrelerdeki farklılıklar. Bir yerde bazı uzantılarla ilgisi olduğunu okudum ama yeni bir proje için hangilerini ve birini veya diğerini nasıl seçeceğimi bilmiyorum.
132 c++  gcc  c++11  clang 

3
Thread_local, C ++ 11'de ne anlama geliyor?
thread_localC ++ 11'deki açıklamayla kafam karıştı . Anladığım kadarıyla, her iş parçacığı bir işlevdeki yerel değişkenlerin benzersiz bir kopyasına sahiptir. Global / statik değişkenlere tüm evreler tarafından erişilebilir (muhtemelen kilitleri kullanarak senkronize erişim). Ve thread_localdeğişkenler tüm iş parçacıkları tarafından görülebilir, ancak yalnızca tanımlandıkları iş parçacığı tarafından değiştirilebilir mi? Doğru mu?

10
C ++ 11'de iş parçacığı havuzu
İlgili sorular : C ++ 11 hakkında: C ++ 11: std :: iş parçacığı havuza alındı ​​mı? C ++ 11'deki zaman uyumsuz (launch :: async), pahalı iş parçacığı oluşturmadan kaçınmak için iş parçacığı havuzlarını geçersiz kılacak mı? Boost Hakkında: C ++ iş parçacığını yeniden kullanma iş parçacığı boost :: thread …


6
Std :: shared_ptr <void> neden çalışır?
Kapatma sırasında rastgele temizleme gerçekleştirmek için std :: shared_ptr kullanarak bazı kodlar buldum. İlk başta bu kodun işe yaramayacağını düşündüm, ama sonra aşağıdakileri denedim: #include &lt;memory&gt; #include &lt;iostream&gt; #include &lt;vector&gt; class test { public: test() { std::cout &lt;&lt; "Test created" &lt;&lt; std::endl; } ~test() { std::cout &lt;&lt; "Test destroyed" &lt;&lt; …
129 c++  c++11  shared-ptr 


2
işlev başlığında ok operatörü (->)
Aşağıdaki kodla karşılaştım: template &lt;typename T, typename T1&gt; auto compose(T a, T1 b) -&gt; decltype(a + b) { return a+b; } Anlayamadığım bir şey var: Ok operatörünün ( -&gt;) işlev başlığında ne anlama geldiğini nereden öğrenebilirim ? Sanırım tamamen mantıksal olarak, -&gt;operatörün autoçıkarılacak bir türü belirlediğini , ancak bunu açıklığa …
129 c++  c++11  auto  decltype 


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.