Na przykład: int a = 12; cout << typeof(a) << endl; Oczekiwany
Na przykład: int a = 12; cout << typeof(a) << endl; Oczekiwany
Zwróć uwagę na aktualizacje na końcu tego postu. Aktualizacja: Utworzyłem projekt publiczny na GitHub dla tej biblioteki! Chciałbym mieć jeden szablon, który raz na zawsze zajmuje się ładnym drukowaniem wszystkich pojemników STL operator<<. W pseudokodzie szukam czegoś...
Jestem dość zaznajomieni z C ++ 11-tych std::thread, std::asynca std::futureskładniki (np zobaczyć tę odpowiedź ), które są prosto do przodu. Nie mogę jednak do końca zrozumieć, co to std::promisejest, co robi i w jakich sytuacjach najlepiej go wykorzystać. Sam standardowy dokument nie zawiera...
mam klasę template<size_t N, size_t M> class Matrix { // .... }; Chcę utworzyć, typedefktóry tworzy Vector(wektor kolumny), który jest równoważny Matrixz rozmiarami N i 1. Coś w tym rodzaju: typedef Matrix<N,1> Vector<N>; Co powoduje błąd kompilacji. Poniższe tworzy coś...
unique_ptr<T>nie zezwala na tworzenie kopii, zamiast tego obsługuje semantykę przenoszenia. Jednak mogę zwrócić a unique_ptr<T>z funkcji i przypisać zwróconą wartość do zmiennej. #include <iostream> #include <memory> using namespace std; unique_ptr<int> foo() {...
Próbuję zaktualizować mój kompilator C ++ do C ++ 11. Trochę przeszukałem i doszedłem do wniosku, że muszę użyć flagi -std=c++0xlub -std=gnu++0x, ale niewiele wiem o flagach. Czy ktoś może mi pomóc? (Używam Ubuntu 12.04.) Oto błąd, który otrzymuję z kompilatora, gdy próbuję użyć biblioteki...
Kiedy próbuję uruchomić plik makefile wygenerowany przez CMake w celu skompilowania mojego programu, pojawia się błąd zakres oparty na pętlach nie jest obsługiwany w trybie C ++ 98. Próbowałem dodać add_definitions(-std=c++0x)do mojego CMakeLists.txt, ale to nie pomogło. Próbowałem...
На этот вопрос есть ответы на Stack Overflow на русском : Чем std :: unique_lock отличается от std :: lock_guard? Mam dwa przypadki użycia. A. Chcę zsynchronizować dostęp przez dwa wątki do kolejki. B. Chcę zsynchronizować dostęp do kolejki przez dwa wątki i użyć...
Wydaje mi się, że posiadanie „funkcji, która zawsze zwraca 5”, łamie lub osłabia znaczenie „wywoływania funkcji”. Musi być jakiś powód lub potrzeba takiej możliwości, inaczej nie byłoby w C ++ 11. Dlaczego tam jest // preprocessor. #define MEANING_OF_LIFE 42 // constants: const int MeaningOfLife...
Typowym przykładem pętli opartych na zakresie C ++ 11 dla () jest zawsze coś takiego: std::vector<int> numbers = { 1, 2, 3, 4, 5, 6, 7 }; for ( auto xyz : numbers ) { std::cout << xyz << std::endl; } W którym xyzto przypadku jest int. Ale co się dzieje, gdy mamy coś w rodzaju...
C ++ 11 zezwala na inline namespaces, których wszyscy członkowie są również automatycznie dołączani namespace. Nie mogę wymyślić żadnego przydatnego zastosowania tego - czy ktoś mógłby podać krótki, zwięzły przykład sytuacji, w której jest inline namespaceto potrzebne i gdzie jest to najbardziej...
Czy istnieje adapter kontenera, który odwróciłby kierunek iteratorów, dzięki czemu mogę iterować po kontenerze w odwrotnej kolejności za pomocą pętli for opartej na zakresie? Za pomocą jawnych iteratorów przekonwertowałbym to: for (auto i = c.begin(); i != c.end(); ++i) { ... zaangażowany w...
Czy jest możliwe, aby kod C ++ był zgodny zarówno ze standardem C ++ 03, jak i standardem C ++ 11 , ale robi różne rzeczy w zależności od tego, w ramach którego standardu jest
Próbuję zbudować std::threadz funkcją członka, która nie przyjmuje argumentów i zwraca void. Nie mogę znaleźć żadnej składni, która działa - kompilator narzeka bez względu na wszystko. Jaki jest prawidłowy sposób zaimplementowania spawn(), std::threadaby zwracał wykonanie test()? #include...
std::shared_ptr<Object> p1 = std::make_shared<Object>("foo"); std::shared_ptr<Object> p2(new Object("foo")); Wiele postów z Google i Stackoverflow jest na ten temat, ale nie jestem w stanie zrozumieć, dlaczego make_sharedjest bardziej wydajny niż bezpośrednie korzystanie...
Ostatnio natknąłem się na następujący ezoteryczny fragment kodu. int main(){(([](){})());} Sformatuj go w następujący sposób, aby był bardziej czytelny: int main(){ (([](){})()); // Um... what?!?! } Ale nie mogę się zastanowić, jak (([](){})())ważny jest kod. Nie wygląda na składnię...
Gdy funkcja przyjmuje wartość shared_ptr (z boost lub C ++ 11 STL), przekazujesz ją: według stałej referencji: void foo(const shared_ptr<T>& p) lub według wartości void foo(shared_ptr<T> p):? Wolałbym pierwszą metodę, ponieważ podejrzewam, że byłaby szybsza. Ale czy to naprawdę...
Nie zadaję tego pytania przede wszystkim ze względu na zalety zbierania śmieci. Moim głównym powodem, dla którego o to pytam, jest to, że wiem, że Bjarne Stroustrup powiedział, że C ++ będzie miało w pewnym momencie moduł wyrzucający śmieci. To powiedziawszy, dlaczego nie zostało dodane? Istnieje...
Zacząłem studiować inteligentne wskaźniki C ++ 11 i nie widzę pożytecznego zastosowania std::weak_ptr. Czy ktoś może mi powiedzieć, kiedy std::weak_ptrjest przydatny /