Pytania oznaczone «c++11»

140
Kiedy należy używać std :: thread :: detach?

Czasami muszę użyć, std::threadaby przyspieszyć moją aplikację. Wiem też, że join()czeka, aż wątek się zakończy. Łatwo to zrozumieć, ale jaka jest różnica między dzwonieniem detach()a nie dzwonieniem? Pomyślałem, że bez detach()wątku metoda wątku będzie działać niezależnie od wątku. Nie...

139
Pule wątków w C ++ 11

Odpowiednie pytania : O C ++ 11: C ++ 11: std :: thread pooled? Czy async (launch :: async) w C ++ 11 sprawi, że pule wątków będą przestarzałe, aby uniknąć kosztownego tworzenia wątków? O Boost: C ++ usprawnia ponowne wykorzystanie wątków w wątku boost :: thread i tworząc ich...

139
Czy efektywny C ++ jest nadal skuteczny?

Z tego, co zobaczyłem w tym poście , postanowiłem zacząć czytać książkę Efektywne C ++ . Ale teraz, gdy pojawiło się wiele nowych funkcji dzięki C ++ 11 i zmieniło się kilka dobrych praktyk, nie jestem pewien, czy jest to w rzeczywistości dobry pomysł. Czy pojawienie się C ++ 11 spowodowało, że...

139
Dlaczego mogę używać auto na typie prywatnym?

Byłem w jakiś sposób zaskoczony, że poniższy kod kompiluje się i działa (vc2012 i gcc4.7.2) class Foo { struct Bar { int i; }; public: Bar Baz() { return Bar(); } }; int main() { Foo f; // Foo::Bar b = f.Baz(); // error auto b = f.Baz(); // ok std::cout << b.i; } Czy to prawda, że...

138
Futures a obietnice

Mylę się z różnicą między przyszłością a obietnicą. Oczywiście mają różne metody i rzeczy, ale jaki jest faktyczny przypadek użycia? Czy to jest ?: kiedy zarządzam jakimś zadaniem asynchronicznym, używam przyszłości, aby uzyskać wartość „w przyszłości” kiedy jestem zadaniem asynchronicznym,...

136
Nowa składnia „= default” w C ++ 11

Nie rozumiem, dlaczego miałbym to zrobić: struct S { int a; S(int aa) : a(aa) {} S() = default; }; Dlaczego po prostu nie powiedzieć: S() {} // instead of S() = default; po co wprowadzać do tego nową