«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).


6
Qt Creator'da C ++ 11 nasıl etkinleştirilir?
Başlık oldukça açıklayıcı. Qt Creator 2.7.0'ı indirdim ve bazı temel C ++ 11 kodlarını derlemeye çalışıyorum: int my_array[5] = {1, 2, 3, 4, 5}; for(int &x : my_array) { x *= 2; } Aşağıdaki hatayı alıyorum: range based for loops are not allowed in c++ 98 mode Bu makaleye göre …
167 c++  qt  c++11 

8
Sabit referans olarak Lambda yakalama?
Lambda ifadesinde const referansı ile yakalamak mümkün müdür? Aşağıda işaretlenen atamanın başarısız olmasını istiyorum, örneğin: #include <cstdlib> #include <vector> #include <string> #include <algorithm> using namespace std; int main() { string strings[] = { "hello", "world" }; static const size_t num_strings = sizeof(strings)/sizeof(strings[0]); string best_string = "foo"; for_each( &strings[0], &strings[num_strings], [&best_string](const …
166 c++  c++11  lambda  c++14 

3
İşlev imzalarında neden std :: enable_if kullanmam gerekiyor?
Scott Meyers bir sonraki kitabı EC ++ 11'in içeriğini ve statüsünü yayınladı . Kitaptaki bir öğenin " std::enable_ifİşlev imzalarından kaçın" olabileceğini yazdı . std::enable_if işlevleri veya sınıfları aşırı yük çözünürlüğünden koşullu olarak kaldırmak için işlev bağımsız değişkeni, dönüş türü veya sınıf şablonu veya işlev şablonu parametresi olarak kullanılabilir. Gelen bu …

11
Güçlü yazılan numaralandırmayı otomatik olarak int'e nasıl dönüştürebilirim?
#include <iostream> struct a { enum LOCAL_A { A1, A2 }; }; enum class b { B1, B2 }; int foo(int input) { return input; } int main(void) { std::cout << foo(a::A1) << std::endl; std::cout << foo(static_cast<int>(b::B2)) << std::endl; } a::LOCAL_AKesinlikle yazılı Çeteleler alçıda olmadan bunu yapamaz iken, normal çeteleler, …

6
Sanal işlevlerin varsayılan parametreleri olabilir mi?
Bir temel sınıf (veya arabirim sınıfı) bildirir ve parametrelerinden biri veya daha fazlası için varsayılan bir değer belirtirseniz, türetilmiş sınıfların aynı varsayılanları belirtmesi gerekir mi, yoksa türetilmiş sınıflarda hangi varsayılanlar gösterilir? Zeyilname: Bunun farklı derleyiciler arasında nasıl ele alınabileceği ve bu senaryoda "önerilen" uygulamalarla ilgili herhangi bir girdi ile de …
164 c++  c++11  c++03 

7
Nullptr kullanmanın avantajları nelerdir?
Bu kod parçası kavramsal olarak üç işaretçi için de aynı şeyi yapar (güvenli işaretçi başlatma): int* p1 = nullptr; int* p2 = NULL; int* p3 = 0; Ve böylece, işaretçileri atama avantajları nelerdir nullptronlara değerleri atamak üzerinde NULLveya 0?
163 c++  c++11  null  c++-faq  nullptr 


7
std :: işlev vs şablon
C ++ 11 std::functionsayesinde functor sarmalayıcıları ailesini aldık . Ne yazık ki, bu yeni eklemeler hakkında sadece kötü şeyler duymaya devam ediyorum. En popüler olanları korkunç derecede yavaş olmalarıdır. Test ettim ve şablonlarla karşılaştırıldığında gerçekten emiyorlar. #include <iostream> #include <functional> #include <string> #include <chrono> template <typename F> float calc1(F f) …


2
Sınıf üyeleri için akıllı işaretçiler kullanma
C ++ 11 sınıf üyeleri olarak akıllı işaretçi kullanımını anlamakta sorun yaşıyorum. Akıllı işaretçiler hakkında çok şey okudum unique_ptrve genel olarak nasıl ve shared_ptr/ nasıl weak_ptrçalıştığını anladığımı düşünüyorum . Anlamadığım şey gerçek kullanımdır. Herkesin unique_ptrneredeyse her zaman gitmek için bir yol olarak kullanılmasını önerdiği görülüyor . Ama böyle bir şeyi …


6
Lambda'da yakalama
Bir C ++ 11 lambda'da hareketle (rvalue referansı olarak da bilinir) nasıl yakalayabilirim? Ben böyle bir şey yazmaya çalışıyorum: std::unique_ptr<int> myPointer(new int); std::function<void(void)> example = [std::move(myPointer)]{ *myPointer = 4; };

7
üye işlevini koşullu olarak derlemek için std :: enable_if
Nasıl kullanılacağını anlamak için çalışmak için basit bir örnek almaya çalışıyorum std::enable_if. Bu cevabı okuduktan sonra basit bir örnek bulmanın çok zor olmaması gerektiğini düşündüm. Kullanmak istediğim std::enable_ifiki üye fonksiyonları arasında seçim ve bunlardan yalnızca birini kullanılacak izin vermek. Ne yazık ki, aşağıdaki gcc 4.7 ile derlenmez ve saatlerce ve …
156 c++  templates  g++  c++11 

3
Bağımsız değişkenleri iletmek için std :: forward ne zaman kullanılır?
C ++ 0x aşağıdakilere bir örnek gösterir std::forward: template<class T> void foo(T&& arg) { bar(std::forward<T>(arg)); } Ne zaman kullanmak std::forwardher zaman avantajlıdır ? Ayrıca, &&parametre bildiriminde kullanılmasını gerektirir , her durumda geçerli mi? Ben fonksiyonu ile bildirilirse, bir fonksiyona geçici geçmesi gerektiğini düşündüm &&, bu yüzden herhangi bir parametre ile …

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.