Als «c++» getaggte Fragen

C ++ ist eine universelle Programmiersprache. Es wurde ursprünglich als Erweiterung von C entwickelt und hat eine ähnliche Syntax, ist aber jetzt eine völlig andere Sprache. Verwenden Sie dieses Tag für Fragen zu Code, der mit einem C ++ - Compiler kompiliert werden soll. Verwenden Sie ein versionierungsspezifisches Tag für Fragen zu einer bestimmten Standardversion [C ++ 11], [C ++ 14], [C ++ 17] oder [C ++ 20] usw.

3
Qt "Private Slots": Was ist das?
Ich verstehe, wie man es benutzt, aber die Syntax stört mich. Was macht "Private Slots:"? Ich habe noch nie etwas zwischen dem privaten Schlüsselwort und dem: in einer Klassendefinition gesehen. Gibt es hier ausgefallene C ++ - Magie? Und hier ein Beispiel: #include <QObject> class Counter : public QObject { …
83 c++  qt  signals-slots 


16
Wie implodiere ich einen Vektor von Strings in einen String (auf elegante Weise)
Ich suche nach der elegantesten Möglichkeit, einen String-Vektor in einen String zu implodieren. Unten ist die Lösung, die ich jetzt verwende: static std::string& implode(const std::vector<std::string>& elems, char delim, std::string& s) { for (std::vector<std::string>::const_iterator ii = elems.begin(); ii != elems.end(); ++ii) { s += (*ii); if ( ii + 1 != …
83 c++  string  stl  stdstring  implode 


2
Wie wird std :: is_function implementiert?
Wie ist das Folgende eine Implementierung für std::is_function? template<class T> struct is_function : std::integral_constant< bool, !std::is_const<const T>::value && !std::is_reference<T>::value > {}; (aus CPP-Referenz ) Mir scheint, eine intwäre eine Funktion unter dieser Definition. Was vermisse ich?
82 c++  templates  std  sfinae 

4
Warum ist die neue Zufallsbibliothek besser als std :: rand ()?
Also sah ich einen Vortrag namens rand (), der als schädlich angesehen wurde, und er befürwortete die Verwendung des Motorverteilungsparadigmas der Zufallszahlengenerierung gegenüber dem einfachen std::rand()Plusmodul-Paradigma. Ich wollte jedoch die Fehler aus std::rand()erster Hand sehen, also machte ich ein kurzes Experiment: Im Grunde genommen habe ich 2 Funktionen getRandNum_Old()und getRandNum_New()daß …
82 c++  c++11  random 

2
Eine 'for'-Schleife, die praktisch unendlich zu sein scheint
Ich debugge gerade Code und bin auf diese Zeile gestoßen: for (std::size_t j = M; j <= M; --j) (Geschrieben von meinem Chef, der im Urlaub ist.) Es sieht für mich wirklich seltsam aus. Was tut es? Für mich sieht es aus wie eine Endlosschleife.
82 c++ 


5
Wenn ich etwas "werfe", wo wird es gespeichert?
Ich verstehe, dass wenn etwas thrown ist, der Stapel bis zu dem Punkt 'abgewickelt' wird, an dem es abgefangen wird, und die Destruktoren von Klasseninstanzen auf dem Stapel in jedem Funktionskontext ausgeführt werden (weshalb Sie keine Ausnahme von einem Destruktor auslösen sollten - Sie könnten am Ende einen zweiten werfen) …

9
pthread-Funktion aus einer Klasse
Nehmen wir an, ich habe eine Klasse wie class c { // ... void *print(void *){ cout << "Hello"; } } Und dann habe ich einen Vektor von c vector<c> classes; pthread_t t1; classes.push_back(c()); classes.push_back(c()); Jetzt möchte ich einen Thread erstellen c.print(); Und das Folgende gibt mir das folgende Problem: …
82 c++  pthreads 




10
Ist es sicher, argc und argv in der Hauptfunktion umzubenennen?
Viele Programme verwenden Standardnamen für eine Reihe von Argumenten und Zeichenfolgenarrays. Der Prototyp der Hauptfunktion sieht aus wie : int main(int argc, char *argv[]);. Aber würde ich etwas kaputt machen, wenn ich benutzerdefinierte Namen für diese Variablen wähle? Z.B int main(int n_of_args, char *args[]); Im Kontext des Compilers ist alles …
82 c++  c  main 

3
Wie heißt diese C ++ - Funktionalität?
Ich habe C ++ - Code geschrieben und fälschlicherweise den Namen einer Funktion weggelassen WSASocket. Mein Compiler hat jedoch keinen Fehler ausgelöst und my SOCKETmit dem ganzzahligen Wert 1 anstelle eines gültigen Sockets verknüpft . Der betreffende Code hätte folgendermaßen aussehen müssen: this->listener = WSASocket(address->ai_family, address->ai_socktype, address->ai_protocol, NULL, NULL, WSA_FLAG_OVERLAPPED); …
82 c++ 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.