Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.net  
   

Die mobilen Seiten von c++.net:
https://m.c-plusplus.net

  
C++ Forum :: Die Artikel ::  Einführung in Design Patterns  
Gehen Sie zu Seite Zurück  1, 2, 3, 4
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
RAII ist der einzige Weg
Unregistrierter




Beitrag RAII ist der einzige Weg Unregistrierter 19:08:03 30.07.2008   Titel:              Zitieren

Sovok schrieb:
ich bin auch gegen smart pointer aus ähnlichem grund wie nep
einfach weil die meißten c++ mit rohen pointern gelernt haben und
die beispiele mit rohen pointern verständlich und durchsichtig sind


dass smart pointer in realer umgebung sinnvoller sind ist richtig aber
ein ganz anderes thema

Tut mir leid aber das ist großer Mist.
Zum einen würde es sicher ausreichen kurz zu erläutern, was ein smart pointer ist.
Beu Tutorials ist es wichtig immer den richtigen und sichersten weg zu wählen, damit andere davon lernen können. Warum also nicht smart pointer benutzen. An der Verständnis kann es sicherlich nicht liegen, denn:
Foo *bar = new Foo();
bar->blub()
oder
auto_ptr<Foo>bar(new Foo());
bar->blub();
ist alles andere als ein riesiger schwer zu verstehende Unterschied.
Das einzige was nötig wäre, ist dem Leser kurz zu vermitteln was so ein Zeiger Container macht. Also bei zerstörung des containers automatisch den Inhalt freigeben und somit Speicherlecks zu verhindern und ansonsten die Nutzung des Objektes wie immer von statten geht.
Das ist ebenso verständlich wie mit rohen pointern plus zusätzlicher Sicherheit. Solche Grundlegenden Dinge sollten auch in so einem Tut genutzt und wenn nötig kurz erklärt werden.

Wenn etwas beibringen, dann auch richtig.

Schöne Grüße
bEKAR
Mitglied

Benutzerprofil
Anmeldungsdatum: 29.11.2009
Beiträge: 6
Beitrag bEKAR Mitglied 21:44:16 29.11.2009   Titel:   kleiner Rechtschreibfehler            Zitieren

also erstmal Danke für diesen Artikel! Habe dadurch endlich nach 2 Tagen eine funktionierende Observer Subject Struktur hinbekommen. Es gibt noch einen kleinen Fehler

class ConcrecteSubject : public Subject

da hast du ein c zu viel. Ansonst Danke für diesen Artikel ich teste jetzt mal das Strategie Pattern!

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 // ConcreteSubject.h //
#include <string>
#include "Subject.h"
 
using namespace std;
 
class ConcrecteSubject : public Subject
{
 
private:
    string data;
 
public:
    void setData(string _data) { data = _data; }
    string getData() { return data; }
    ConcreteSubject() : Subject() {}
};



Gruß bEKAR
phcn.fraggle
Mitglied

Benutzerprofil
Anmeldungsdatum: 28.08.2008
Beiträge: 175
Beitrag phcn.fraggle Mitglied 20:14:26 21.04.2010   Titel:              Zitieren

Super Artikel, genau danach habe ich gesucht und auf anhieb gefunden ;) :live:

_________________
Mit freundlichem Gruß,fraggle[at]phcn[dot]de ( Jabber )
Freeunix.net - We host your source!
[PHCN]Jabber Service
tomislaw
Unregistrierter




Beitrag tomislaw Unregistrierter 11:34:59 09.09.2010   Titel:              Zitieren

Super Artikel, danke auch von meiner Seite! :live:
fr33g
Mitglied

Benutzerprofil
Anmeldungsdatum: 07.01.2010
Beiträge: 809
Beitrag fr33g Mitglied 12:15:38 10.09.2010   Titel:              Zitieren

Sehr guter Artikel, dickes Dankeschön auch von mir :live:

Lg freeG
midnight_coder
Unregistrierter




Beitrag midnight_coder Unregistrierter 11:54:25 08.05.2017   Titel:   Verbesserung            Zitieren

Vielen Dank für den Artikel!
Im Adapter-Pattern habe ich zwei Fehler entdeckt resp. in der Erzeugung der Objekte über den Iterator:
1. begin() und end() sind doch Funktionen also sollte man die Klammern nicht vergessen
2. sollte man den Iter inkrementieren und nicht die Liste

Deine Version:
//alle gemoetrischen Figuren anzeigen
list<Shape*>::iterator iter = shapes.begin();
for ( ; iter != shapes.end; shapes++ )
(*iter)->display();

Verbesserte Version:
//alle gemoetrischen Figuren anzeigen
list<Shape*>::iterator iter = shapes.begin();
for ( ; iter != shapes.end(); iter++ )
(*iter)->display();

Habe mir nur den Adapter angeschaut möglicherweise gibts im Artikel weitere Fehler
C++ Forum :: Die Artikel ::  Einführung in Design Patterns  
Gehen Sie zu Seite Zurück  1, 2, 3, 4
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können keine Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.net ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info und www.c-plusplus.net enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.