Tag: pimpl-idiom

Das Pimpl-idiom, auch bekannt als die Zusammenstellung firewall oder Cheshire-Cat-Technik, ist eine „private Umsetzung“ Technik nützlich in C++ und anderen ähnlichen statisch kompilierte Sprachen.

Pimpl idiom mit Vererbung

Anzahl der Antworten 5 Antworten
Möchte ich pimpl-idiom mit Vererbung. Hier ist die base public-Klasse und deren Implementierung-Klasse: class A { public: A(){pAImpl = new AImpl;}; void foo(){pAImpl->foo();}; private: AImpl* pAImpl; }; class AImpl { public: void foo(){/*do something*/}; }; Und ich

Was sind die vor-und Nachteile des d-Zeiger?

Anzahl der Antworten 3 Antworten
d-Zeiger Massiv in Qt, Sie sind eine Implementierung des pimpl-idiom. Ich kenne vor-und Nachteile der pimpl-idiom. Aber ich habe verpasst, die Vorteile des d-Zeiger-Implementierung. Hier und hier sind die Proben von d-Zeigern. Ist es nicht einfacher, nur

Wie die Qt-PIMPL-idiom?

Anzahl der Antworten 1 Antworten
PIMPL steht für Pointer zu IMPLementation. Die Umsetzung steht für "detail": etwas, dass der Benutzer der Klasse brauchen nicht besorgt zu sein mit. Qt eine eigene Klasse Implementierungen sauber trennen der Schnittstellen von den Implementierungen, die durch

Free-Funktion versus member-Funktion

Anzahl der Antworten 3 Antworten
Was ist der Vorteil, dass ein kostenloses Funktion (anonymous namespace und nur in einem einzigen source-file) und sendet alle Variablen, die als Parameter im Gegensatz zu einer privaten Klasse member-Funktion frei alle Parameter und der Zugriff auf

Ist das pImpl-idiom wirklich in der Praxis verwendet?

Anzahl der Antworten 11 Antworten
Ich lese das Buch "Exceptional C++" von Herb Sutter, und in diesem Buch habe ich gelernt, über das pImpl-idiom. Grundsätzlich, die Idee ist, erstellen Sie eine Struktur für die private Objekte einer class und dynamisch zugewiesen werden

Das Pimpl-Idiom in der Praxis

Anzahl der Antworten 8 Antworten
Dort wurden ein paar Fragen auf, SO etwa die pimpl-idiomaber ich bin neugierig, wie oft es genutzt wird, in der Praxis. Verstehe ich, gibt es einige trade-offs zwischen performance und Kapselung, plus einige debugging-ärgernisse durch die zusätzliche

Sollte ich shared_ptr oder unique_ptr verwenden

Anzahl der Antworten 4 Antworten
Ich habe einige Objekte mit dem pimpl-idiom, bin mir aber nicht sicher, ob std::shared_ptr oder std::unique_ptr. Ich verstehe, dass std::unique_ptr effizienter ist, aber das ist nicht so sehr ein Problem für mich, da diese Objekte relativ Schwergewicht

Wie verwende ich unique_ptr für pimpl?

Anzahl der Antworten 2 Antworten
Hier ist eine Vereinfachung von dem, was ich sehe, wenn ich versuche, mit unique_ptr für pimpl. Ich wählte unique_ptr, weil ich wirklich wollen, dass die Klasse, die Eigentümer der Zeiger - ich will das Leben des pimpl-Zeiger,

Pimpl idiom vs Reine virtuelle Klassenschnittstelle

Anzahl der Antworten 10 Antworten
Ich Frage mich, was würde ein Programmierer zu wählen, entweder Pimpl-idiom oder rein virtuelle Klassen und Vererbung. Ich verstehe, dass pimpl-idiom kommt mit einer expliziten zusätzlichen Umweg für jede öffentliche Methode und das Objekt der Schöpfung overhead.