Pytania otagowane jako c++11

Użyj tego znacznika do kodu, który musi zostać skompilowany jako C ++ 11 (nie używając żadnych funkcji wprowadzonych w C ++ 14 lub nowszej).

6
Nowoczesny sposób na filtrowanie pojemnika STL?
Wracając do C ++ po latach C #, zastanawiałem się jaki byłby nowoczesny - czytaj: C ++ 11 - sposób filtrowania tablicy, czyli jak możemy osiągnąć coś podobnego do tego zapytania Linq: var filteredElements = elements.Where(elm => elm.filterProperty == true); Aby przefiltrować wektor elementów ( stringsze względu na to pytanie)? …
103 c++  c++11  stl 



2
C ++ 0x przechwytywanie lambda przez wartość zawsze const?
Czy istnieje sposób na przechwycenie według wartości i uczynienie przechwyconej wartości inną niż stała? Mam funktor biblioteczny, który chciałbym przechwycić i wywołać metodę, która nie jest stała, ale powinna być. Poniższe nie kompiluje się, ale wykonanie foo :: operator () const naprawia to. struct foo { bool operator () ( …
102 c++  lambda  const  c++11 


5
Ile kosztuje narzut inteligentnych wskaźników w porównaniu do zwykłych wskaźników w C ++?
Ile kosztuje narzut inteligentnych wskaźników w porównaniu do zwykłych wskaźników w C ++ 11? Innymi słowy, czy mój kod będzie wolniejszy, jeśli użyję inteligentnych wskaźników, a jeśli tak, to o ile wolniej? W szczególności pytam o C ++ 11 std::shared_ptri std::unique_ptr. Oczywiście rzeczy zepchnięte w dół będą większe (przynajmniej tak …

6
Przekazywanie tablicy std :: o nieznanym rozmiarze do funkcji
W C ++ 11, jak powinienem napisać funkcję (lub metodę), która pobiera std :: tablicę znanego typu, ale nieznanego rozmiaru? // made up example void mulArray(std::array<int, ?>& arr, const int multiplier) { for(auto& e : arr) { e *= multiplier; } } // lets imagine these being full of numbers …
102 c++  c++11  stdarray 

3
Jak wyspecjalizować operator () std :: hash <Key> :: dla typu zdefiniowanego przez użytkownika w nieuporządkowanych kontenerach?
Aby obsługiwać typy kluczy zdefiniowane przez użytkownika w programie std::unordered_set&lt;Key&gt;i std::unordered_map&lt;Key, Value&gt; należy podać operator==(Key, Key)funktor skrótu: struct X { int id; /* ... */ }; bool operator==(X a, X b) { return a.id == b.id; } struct MyHash { size_t operator()(const X&amp; x) const { return std::hash&lt;int&gt;()(x.id); } }; …

3
Czy gcc 4.8 lub starszy zawiera błędy w wyrażeniach regularnych?
Próbuję użyć std :: regex w fragmencie kodu C ++ 11, ale wygląda na to, że obsługa jest trochę błędna. Przykład: #include &lt;regex&gt; #include &lt;iostream&gt; int main (int argc, const char * argv[]) { std::regex r("st|mt|tr"); std::cerr &lt;&lt; "st|mt|tr" &lt;&lt; " matches st? " &lt;&lt; std::regex_match("st", r) &lt;&lt; std::endl; std::cerr …
101 c++  regex  gcc  c++11  libstdc++ 


13
Czy mogę zaimplementować autonomiczny typ składowy „self” w C ++?
C ++ nie ma odpowiednika słowa kluczowego PHPself , które ocenia typ otaczającej klasy. Łatwo jest sfałszować to na podstawie klasy: struct Foo { typedef Foo self; }; ale musiałem napisać Fooponownie. Może któregoś dnia się pomylę i wywołam cichy błąd. Czy mogę użyć kombinacji decltypeprzyjaciół i przyjaciół, aby ta …
101 c++  c++11 



7
Jak mogę przekazać std :: unique_ptr do funkcji
Jak mogę przekazać a std::unique_ptrdo funkcji? Powiedzmy, że mam następującą klasę: class A { public: A(int val) { _val = val; } int GetVal() { return _val; } private: int _val; }; Następujące elementy nie są kompilowane: void MyFunc(unique_ptr&lt;A&gt; arg) { cout &lt;&lt; arg-&gt;GetVal() &lt;&lt; endl; } int main(int argc, …
101 c++  c++11  unique-ptr 

3
Czy implementacja gcc std :: unordered_map jest powolna? Jeśli tak - dlaczego?
Tworzymy oprogramowanie o wysokiej wydajności w języku C ++. Tam potrzebujemy współbieżnej mapy skrótów i zaimplementowanej. Dlatego napisaliśmy test porównawczy, aby dowiedzieć się, o ile wolniej jest porównywana nasza współbieżna mapa skrótów std::unordered_map. Ale std::unordered_mapwydaje się być niesamowicie powolny ... Więc to jest nasz mikro-test porównawczy (dla mapy współbieżnej stworzyliśmy …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.