Domande taggate «c++»

C ++ è un linguaggio di programmazione generico. È stato originariamente progettato come estensione di C e ha una sintassi simile, ma ora è un linguaggio completamente diverso. Utilizzare questo tag per domande sul codice (da compilare) compilato con un compilatore C ++. Utilizzare un tag specifico della versione per domande relative a una revisione standard specifica [C ++ 11], [C ++ 14], [C ++ 17] o [C ++ 20], ecc.

6
C ++, copia impostata su vettoriale
Devo copiare std::setsu std::vector: std::set <double> input; input.insert(5); input.insert(6); std::vector <double> output; std::copy(input.begin(), input.end(), output.begin()); //Error: Vector iterator not dereferencable Dov'è il problema?
146 c++  copy  stdvector  stdset 

1
Cosa succede se static_cast non è valido per enumare la classe?
Considera questo codice C ++ 11: enum class Color : char { red = 0x1, yellow = 0x2 } // ... char *data = ReadFile(); Color color = static_cast<Color>(data[0]); Supponiamo che i dati [0] siano in realtà 100. Qual è il colore impostato secondo lo standard? In particolare, se lo …
146 c++  c++11 


8
uint8_t non può essere stampato con cout
Ho uno strano problema nel lavorare con numeri interi in C ++. Ho scritto un semplice programma che imposta un valore su una variabile e quindi lo stampa, ma non funziona come previsto. Il mio programma ha solo due righe di codice: uint8_t aa = 5; cout << "value is …
146 c++ 

6
Const prima o const dopo?
Per iniziare, probabilmente sai che constpuò essere utilizzato per rendere i dati di un oggetto o un puntatore non modificabili o entrambi. const Object* obj; // can't change data Object* const obj; // can't change pointer const Object* const obj; // can't change data or pointer Tuttavia puoi anche usare …
146 c++  c  syntax  const 


5
Perché (a% 256) è diverso da (a & 0xFF)?
Ho sempre pensato che, quando facevo (a % 256)l'ottimizzatore, avrei naturalmente usato un'operazione bit a bit efficiente, come se avessi scritto (a & 0xFF). Durante i test su compilatore explorer gcc-6.2 (-O3): // Type your code here, or load an example. int mod(int num) { return num % 256; } …
145 c++  optimization 



4
Utilizzo della variabile membro nell'elenco di acquisizione lambda all'interno di una funzione membro
Il codice seguente viene compilato con gcc 4.5.1 ma non con VS2010 SP1: #include <iostream> #include <vector> #include <map> #include <utility> #include <set> #include <algorithm> using namespace std; class puzzle { vector<vector<int>> grid; map<int,set<int>> groups; public: int member_function(); }; int puzzle::member_function() { int i; for_each(groups.cbegin(),groups.cend(),[grid,&i](pair<int,set<int>> group){ i++; cout<<i<<endl; }); } …

6
Una classe enum C ++ può avere metodi?
Ho una classe enum con due valori e voglio creare un metodo che riceve un valore e restituisce l'altro. Voglio anche mantenere la sicurezza dei tipi (ecco perché uso enum class invece di enums). http://www.cplusplus.com/doc/tutorial/other_data_types/ non menziona nulla sui metodi Tuttavia, ho avuto l'impressione che qualsiasi tipo di classe possa …
145 c++  methods  enums 


11
Come rimuovo un oggetto da un vettore stl con un certo valore?
Stavo guardando la documentazione dell'API per stl vector e ho notato che non esisteva alcun metodo sulla classe vector che consentisse la rimozione di un elemento con un certo valore. Sembra un'operazione comune e sembra strano che non ci sia un modo per farlo.
145 c++  stl 

12
Perché qualcuno dovrebbe usare set invece di unordered_set?
C ++ 0x sta introducendo unordered_setche è disponibile in booste in molti altri luoghi. Quello che capisco è che unordered_setè una tabella hash con O(1)complessità di ricerca. D'altra parte, setnon è altro che un albero con log(n)complessità di ricerca. Perché mai qualcuno dovrebbe usare setinvece di unordered_set? cioè c'è bisogno …

1
Qual è la logica dietro la parola chiave "using" in C ++?
Qual è la logica dietro la parola chiave "using" in C ++? Viene utilizzato in diverse situazioni e sto cercando di scoprire se tutti hanno qualcosa in comune e c'è un motivo per cui la parola chiave "using" viene utilizzata come tale. using namespace std; // to import namespace in …
145 c++  c++11 

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.