c++11
Jak aktywować C++ 11 W CMake?
Kiedy próbuję uruchomić wygenerowany przez CMake plik makefile, aby skompilować mój program, dostaję błąd, który
Pętle opar ... T(CMAKE_CXX_FLAGS "-std=c++0x"), co również nie działa.
Nie rozumiem jak mogę aktywować C++ 11 funkcje wykorzystujące CMake.
C++ template typedef
Mam klasę
template<size_t N, size_t M>
class Matrix {
// ....
};
Chcę utworzyć typedef, który tworzy Vector (we ... public Matrix<N,1>
{ };
Czy istnieje rozwiązanie, czy też nie jest to zbyt kosztowne obejście / najlepsza praktyka?
Korzystanie z inteligentnych wskaźników dla członków klasy
Mam problem ze zrozumieniem użycia inteligentnych wskaźników jako członków klasy w C++11. Dużo czytałem o inteligentnych wska ... ; myDevice = settings.getDevice();
// do something with myDevice...
}
Czy to jest sposób, aby przejść? Dziękuję bardzo!
Jakie zmiany wprowadzone w C++14 mogą potencjalnie złamać program napisany w C++11?
Wprowadzenie
Z C++14 (aka. C++1Y) Standard w stanie zbliżonym do ostatecznego programiści muszą zadawać sobie pytanie o ... wymienione.
zgodnie ze standardem : Jakie zmiany wprowadzone w C++14 mogą potencjalnie zepsuć program napisany w C++11?
Kiedy std:: weak PST jest przydatny?
Zacząłem studiować Inteligentne Wskaźniki C++11 i nie widzę żadnego użytecznego zastosowania std::weak_ptr. Czy ktoś może mi powiedzieć kiedy std::weak_ptr jest przydatne / konieczne?
Do czego służą wewnętrzne przestrzenie nazw?
C++11 pozwala inline namespace s, których wszystkie elementy są również automatycznie w Enklawie namespace. Nie mogę wymyślić ... adeklarowana inline w jednej, ale nie wszystkich deklaracjach, które mogą żyć w różnych plikach. Czy to nie błaga o kłopoty?)
Rozpocznij wątek z funkcją członka
Próbuję skonstruować std::thread z funkcją member, która nie pobiera argumentów i zwraca void. Nie mogę rozgryźć żadnej skład ... est()?
#include <thread>
class blub {
void test() {
}
public:
std::thread spawn() {
return { test };
}
};
Wygodne deklarowanie łańcuchów czasu kompilacji w C++
Możliwość tworzenia i manipulowania ciągami znaków podczas kompilacji w C++ ma kilka przydatnych aplikacji. Chociaż możliwe j ... ray subscripts, i tym podobne). Jednak nie mam czasu (ani wystarczającego zainteresowania) aby zaimplementować takie makro =)
std:: vector performance regression przy włączaniu C++11
Znalazłem interesującą regresję wydajności w małym fragmencie C++, kiedy włączam C++11:
#include <vector>
struct Ite ... ( +- 9.84% ) [74.81%]
0.036678068 seconds time elapsed ( +- 0.80% )
Co nam mówi auto&&?
Jeśli czytasz Kod jak
auto&& var = foo();
Gdzie foo jest dowolną funkcją zwracającą wartość typu T. Następnie var ... iż te w programowaniu szablonów; jak te omówione w przykładach w tym artykule Universal References autorstwa Scotta Meyersa.
Jak używać pętli for() opartej na zakresie z std::map?
Częstym przykładem pętli for() opartych na przedziałach C++11 jest zawsze coś prostego, takiego jak:
std::vector<int> ... adal jestem na g++ 4.4, podczas gdy pętle oparte na zakresach są w g++ 4.6+, więc jeszcze nie miałem okazji tego wypróbować.)
Dlaczego powinienem unikać std:: enable if in function signatures
Scott Meyers opublikował treść i status swojej kolejnej książki EC++11.
Napisał, że jedną z pozycji w książce może być "Avo ... ią zwykłej sygnatury funkcji, ale specjalizacji szablonu)?
czy są jakieś różnice dla szablonów funkcji member i non-member?
Sprawdź, czy klasa ma funkcję członka danego podpisu
Proszę o trick szablonu do wykrycia czy klasa ma określoną funkcję członka danej sygnatury.
Problem jest podobny do przytocz ... alną funkcję zdefiniowaną w jednej przestrzeni nazw, gdy jestem w innej)
Możesz mi podpowiedzieć, jak rozwiązać tę zagadkę?
Jak poprawnie przekazać parametry?
Jestem początkujący w C++, ale nie początkujący w programowaniu.
Próbuję nauczyć się C++(c++11) i jest dla mnie trochę niejas ... w C++ bo naprawdę uważam to za, powiedzmy, nie trywialne. Jak poradziłbyś sobie z moimi przykładami przedstawionymi powyżej?
funkcja wymiany znajomych publicznych
W pięknej odpowiedzi na copy-and-swap-idiom jest kawałek kodu, który potrzebuję pomocy:
class dumb_array
{
public:
// ... cić friend iter begin() i friend iter end() w ten sam sposób wewnątrz klasy? Myślę, że {[1] } nie jest tu potrzebny, prawda?
Jakie nowe możliwości dodają literały zdefiniowane przez Użytkownika do C++?
C++11 wprowadza literały zdefiniowane przez Użytkownika, które pozwolą na wprowadzenie nowej składni dosłownej opartej na ist ... ą, że Twój kod C++ będzie bardziej czytelne?
Zaktualizowano składnię, aby pasowała do ostatecznego projektu w czerwcu 2011
Czy pass-by-value jest rozsądną wartością domyślną w C++11?
W tradycyjnym C++, przekazywanie wartości do funkcji i metod jest powolne dla dużych obiektów i jest generalnie źle widziane. ... a instancji typów takich jak std::vector i std::string? A co z obiektami niestandardowymi? Jaka jest nowa najlepsza praktyka?
std:: function vs template
Dzięki C++11 otrzymaliśmy rodzinę wrapperów functora std::function. Niestety, ciągle słyszę tylko złe rzeczy o tych nowych do ... oczekuje się wysokiej wydajności szablony powinny być używane?
Edit:
Moim kompilatorem jest Visual Studio 2012 bez CTP.
C++11 range based loop: get item by value or reference to const
Czytając przykłady pętli opartych na zakresach, sugerują one dwa główne sposoby1, 2, 3, 4
std::vector<MyClass> vec;
f ... ange vec's items by changing x
}
Czy nie jest lepiej? Czy nie uniknie zbędnej kopii w każdej iteracji kiedy to jest const?
Dlaczego lambda w C++11 wymaga domyślnie "zmiennego" słowa kluczowego do przechwytywania po wartości?
Krótki przykład:
#include <iostream>
int main()
{
int n;
[&](){n = 10;}(); // OK
[=]() m ... ć przechwytywania po wartości, prawda?
Jakieś oświecenia?
(przy okazji używam MSVC2010. AFAIK to powinno być standardowe)