Als «c++» getaggte Fragen

Fragen zu C ++, einer statisch typisierten, frei formulierten, kompilierten, universellen Programmiersprache mit mehreren Paradigmen.

6
Ist es möglich, C ++ mit dem .NET-Framework zu verwenden?
Ich habe viele Kommentare zur GUI-Programmierung sowohl in C # als auch in C ++ gelesen. Und mir ist aufgefallen, dass das .NET-Framework von Microsoft leistungsstark für die GUI-Programmierung ist. Ist es also möglich, C ++ und .NET Framework zu verwenden? Ich denke, es wird eine großartige Kombination sein, da …
18 c++  .net 

4
Schreiben eines Lexers in C ++
Was sind gute Ressourcen zum Schreiben eines Lexikons in C ++ (Bücher, Tutorials, Dokumente), was sind einige gute Techniken und Vorgehensweisen? Ich habe im Internet gesucht und jeder sagt, dass er einen Lexer-Generator wie Lex benutzen soll. Das will ich nicht, ich will ein Lexer von Hand schreiben.
18 c++  compiler  lexer 

3
Versandtestcode. Warum würdest du nicht?
Ich möchte Testcode zusammen mit einem Produkt versenden. Stellen Sie insbesondere eine Option bereit, mit der jeder, der eine Kopie unseres Programms besitzt, auf die Schaltfläche "Selbsttest" klicken oder den Selbsttest in der Befehlszeile bestehen und die gesamte Unit-Suite | durchlaufen kann Integrationstests. Ich möchte dies hauptsächlich tun, um Fehlerbehebungsprobleme …

2
Beim Verketten benachbarter String-Literale
C und C ++ kompilieren benachbarte String-Literale als einzelnes String-Literal. Zum Beispiel das: "Some text..." "and more text" ist äquivalent zu: "Some text...and more text" In anderen Sprachen der C-Familie wie C # oder Java ist dies ein Syntaxfehler (der übrigens vollkommen in Ordnung ist). Was ist der Grund / …

5
Erstellen Aufzählungen spröde Schnittstellen?
Betrachten Sie das folgende Beispiel. Jede Änderung an der ColorChoice-Enumeration wirkt sich auf alle IWindowColor-Unterklassen aus. Neigen Aufzählungen dazu, spröde Schnittstellen zu verursachen? Gibt es etwas Besseres als eine Aufzählung, um mehr polymorphe Flexibilität zu ermöglichen? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { …

4
Welche dieser Antworten in Bezug auf Funktionen ist falsch?
Während ich einige lange Kompilierungen durchgeführt habe, habe ich mich für den allgemeinen C ++ - Test auf ODesk entschieden und bin auf diese Frage gestoßen. Wenn ich mich nicht irre, könnte angesichts des Wortlauts (oder des Fehlens davon) alles wahr sein. ein. int Foo() { } int Foo(int bar) …
17 c++ 


5
Wäre es sinnvoll, Objekte (anstelle von primitiven Typen) für alles in C ++ zu verwenden?
Während eines Projekts, an dem ich kürzlich gearbeitet habe, musste ich viele Funktionen verwenden, die so aussehen: static bool getGPS(double plane_latitude, double plane_longitude, double plane_altitude, double plane_roll, double plane_pitch, double plane_heading, double gimbal_roll, double gimbal_pitch, double gimbal_yaw, int target_x, int target_y, double zoom, int image_width_pixels, int image_height_pixels, double & Target_Latitude, …

3
Wie würden Sie den effektivsten automatisierten Test für Grafikcode für OpenGL in einem Unit-Test durchführen?
Ich schreibe ein Spiel und die dazugehörige Grafik-Engine auf OpenGL in C ++. Ich bin auch ein Fan von guten Codierungsprozessen und automatisierten Tests. Grafikcode + Testen scheint ziemlich nicht mischbar zu sein, da die Ausgabe oft nur visuell oder sehr stark visuell orientiert ist. Stellen Sie sich zum Beispiel …

4
Motivation und Einsatz von Move-Konstruktoren in C ++
Ich habe kürzlich über Move-Konstruktoren in C ++ gelesen (siehe z. B. hier ) und ich versuche zu verstehen, wie sie funktionieren und wann ich sie verwenden sollte. Soweit ich weiß, wird ein Verschiebungskonstruktor verwendet, um die Leistungsprobleme zu verringern, die durch das Kopieren großer Objekte verursacht werden. Auf der …

4
Verwenden Sie `using` in C ++ oder vermeiden Sie es?
Wie soll ich generell vorgehen usingund warum? Ist es situationsabhängig (zB Header, der #included sein wird, vs. Quelldatei, der nicht sein wird)? Auch sollte ich lieber ::std::oder std::? Namespace-Ebene using namespace: using namespace std; pair<string::const_iterator, string::const_iterator> f(const string &s) { return make_pair(s.begin(), s.end()); } Vollständig explizit sein: std::pair<std::string::const_iterator, std::string::const_iterator> f(const …
17 c++  namespace 


13
Ist es eine angemessene Verwendung von #define, um die Eingabe von wiederholtem Code zu vereinfachen?
Gibt es eine Ansicht darüber, ob die Verwendung von #define zum Definieren vollständiger Codezeilen zur Vereinfachung der Codierung eine gute oder schlechte Programmierpraxis ist? Wenn ich zum Beispiel ein paar Wörter zusammen drucken müsste, würde ich mich über das Tippen ärgern << " " << Einfügen eines Leerzeichens zwischen Wörtern …

4
Vorwärtsdeklaration vs include
Reduce the number of #include files in header files. It will reduce build times. Instead, put include files in source code files and use forward declarations in header files. Ich habe das hier gelesen. http://www.yolinux.com/TUTORIALS/LinuxTutorialC++CodingStyle.html . Es heißt also, dass eine Klasse (Klasse A) in der Header-Datei nicht die tatsächliche …
17 c++  coding-style 

2
Ist das Konvertieren einer C ++ - Methode in eine C-Funktion mit einem Zeigerargument ein akzeptables Muster?
Ich benutze C ++ auf ESP-32. Bei der Registrierung eines Timers muss ich Folgendes tun: timer_args.callback = reinterpret_cast<esp_timer_cb_t>(&SoundMixer::soundCallback); timer_args.arg = this; Hier ruft der Timer soundCallback. Und das Gleiche beim Registrieren einer Aufgabe: xTaskCreate(reinterpret_cast<TaskFunction_t>(&SoundProviderTask::taskProviderCode), "SProvTask", stackSize, this, 10, &taskHandle); Die Methode wird also in einer separaten Task gestartet. GCC warnt …
16 c++  c  functions 

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.