Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Lemming

Alter Hase

  • »Lemming« ist der Autor dieses Themas

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

11

13.11.2005, 13:58

nix da
Ok klingt nich blöde.... Ich hab einfach mal zum Test nen proggie ohne typedefs und ohne using geschrieben. Mir is aufgefallen, so schlimm wie ich dachte isses gar nich... werd sehen wie ichs mache

auf jeden danke für deine antwort, Lemming
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

helium

Treue Seele

Beiträge: 180

Wohnort: NRW, Burscheid (nahe Köln)

  • Private Nachricht senden

12

13.11.2005, 18:55

@nixda: math::std::vector ist aber doof. Dawürd ich wahrscheinlich sowas, wie

C-/C++-Quelltext

1
namespace ms = math::std;

machen. Natürlich nicht immer, sondern nur, wenn ich sachen aus dem Namespace sehr oft brauche. Und wann ich welchen Namespace öffne überlege ich mir natürlich. Und wenn es zu konflikten kommen sollte meldet das der Compiler und ich kann explizit qualifizieren.

also sowas, wie

C-/C++-Quelltext

1
typedef unsigned DWord;


Ist natürlich affig. Aber sowas, wie:

C-/C++-Quelltext

1
typedef std::map<std::string, std::list<double> > Foo;


kann nützlich sein. Vor allem, wenn ich dann in meinem Code auch immer Foo::iterator verwende, statt std::map<std::string, std::list<double> >::iterator. Denn wenn ich jetzt auf die Idee komme, das list doch nicht optimal ist und ein vector viel besser wäre kann ich einfach in einer Zeile beim typedef was abändern und bin fertig (wenn nciht irgendwo besonderheiten von list ausgenutzt wurden, die vector nicht hat).
Why is 6 afraid of 7?
Because 7 8 9

Anonymous

unregistriert

13

13.11.2005, 22:32

helium
Wie schon gesagt, ich verlass mich nicht auf meinen Compiler sondern auf mich, ich bin der Coder und ich hab zu bestimmen wie was auszusehen hat. Und jetzt hier neue Namespacedeklarationen reinzuhauen wegen meiner Faulheit oder Optischen Geilheit am Code wird nicht bei mir gemacht. Sorry, das ist nichts halbes und nichts ganzes.

Zum Thema Typedefs: Klar und Deutlich will ichs haben, da will ich kein blödes Typedef haben nur weil ich zu Faul bin 2 Zeilen umzuschreiben. Und für den der 10 Fingersystem beim Coden benutzt ist allein das schon kein Argument mehr.

Wie schon gesagt: Ist der Code nicht Klar und Deutlich, guck ich ihn mir erst gar nicht mehr an. Dafür ist mir meine Zeit zu kostbar.

Lemming

Alter Hase

  • »Lemming« ist der Autor dieses Themas

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

14

14.11.2005, 17:54

Zitat von »"nix da"«

ich verlass mich nicht auf meinen Compiler sondern auf mich, ich bin der Coder und ich hab zu bestimmen wie was auszusehen hat.
wie wärs mit assembler ;)

nein mal im ernst.
sicher über geschmack lässt sich nicht streiten, aber wenn ich irgendwo sowas lese wie:

C-/C++-Quelltext

1
::std::map<::std::basic_string<wchar_t>, ::std::list<::irgendwas::type>>::iterator itr;
verdreh ich langsam die Augen...

vor allem, wenn dann fünf von so dingern als parameter übergeben werden...
das is für mich dann nich mehr sehr übersichtlich.
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

Anonymous

unregistriert

15

14.11.2005, 18:36

Lemming
Bei nem 24" TFT und ner Auflösung von 1600x1200 geht das ohne Probleme ;)

Lemming

Alter Hase

  • »Lemming« ist der Autor dieses Themas

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

16

14.11.2005, 20:57

Zitat von »"nix da"«

Lemming
Bei nem 24" TFT und ner Auflösung von 1600x1200 geht das ohne Probleme ;)
:o :o :o AUCH HABEN WILLLLL!!!!!!!!

Aber selbst mit so einem würd ich typedeffnnn... :P
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

17

14.11.2005, 22:41

Ist doch schnuppe solange man alleine arbeitet. Wenn man im Team arbeitet muss man sich halt auf eine Schnittmenge einigen oder einfach sagen, jeder ist für seinen Bereich zuständig und die Schnittstellen müssen stimmen.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Anonymous

unregistriert

18

15.11.2005, 08:11

Nox
Oder meine Kollegen haben den selben Codingstil wie ich ;)

helium

Treue Seele

Beiträge: 180

Wohnort: NRW, Burscheid (nahe Köln)

  • Private Nachricht senden

19

18.11.2005, 20:04

Zitat

Wie schon gesagt, ich verlass mich nicht auf meinen Compiler sondern auf mich, ich bin der Coder und ich hab zu bestimmen wie was auszusehen hat. Und jetzt hier neue Namespacedeklarationen reinzuhauen wegen meiner Faulheit oder Optischen Geilheit am Code wird nicht bei mir gemacht. Sorry, das ist nichts halbes und nichts ganzes.

Verstehe ich nicht.

Zitat

Zum Thema Typedefs: Klar und Deutlich will ichs haben, da will ich kein blödes Typedef haben nur weil ich zu Faul bin 2 Zeilen umzuschreiben. Und für den der 10 Fingersystem beim Coden benutzt ist allein das schon kein Argument mehr.


Vielleicht ist aber ein "RatingContainer" deutlich viel sagender als eine unendliche Verschachtelung von Templates. Bis das Gehirn das verarbeitet hat vergeht viel zu viel Zeit. Man erhält tonnenweise unnütze Informationen, die man möglicherweise nicht braucht.


Nur damit wir uns verstehen mal iene kleines abstraktes Beispiel:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class Foo {
public:
   typedef std::map<std::string, std::list<double> > Bar;
   void aMethode ();
   void anotherMethod ();
   Bar::key_type yetAnotherMethod ();

private:
   Bar bar;
};

// ---


void Foo::aMethode ()
{
   for (Bar::iterator it=foo.begin(); it!=foo.end(); ++it) {
      ...
   }
}

void Foo::anotherMethode ()
{
   for (Bar::iterator it=foo.begin(); it!=foo.end(); ++it) {
      ...
   }
}

Foo::Bar::key_type Foo::yetAnotherMethode ()
{
   for (Bar::iterator it=foo.begin(); it!=foo.end(); ++it) {
      ...
   }
}


gegen:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class Foo {
public:
   void aMethode ();
   void anotherMethod ();
   std::map<std::string, std::list<double> >::key_type yetAnotherMethod ();

private:
   std::map<std::string, std::list<double> > bar;
};

// ---


void Foo::aMethode ()
{
   for (std::map<std::string, std::list<double> >::iterator it=foo.begin(); it!=foo.end(); ++it) {
      ...
   }
}

void Foo::anotherMethode ()
{
   for (std::map<std::string, std::list<double> >::iterator it=foo.begin(); it!=foo.end(); ++it) {
      ...
   }
}

std::map<std::string, std::list<double> >::key_type Foo::yetAnotherMethode ()
{
   for (std::map<std::string, std::list<double> >::iterator it=foo.begin(); it!=foo.end(); ++it) {
      ...
   }
}


und jetzt ändere mal "std::map<std::string, std::list<double> >" in "std::map<std::string, std::vector<double> >".
Why is 6 afraid of 7?
Because 7 8 9

Anonymous

unregistriert

20

18.11.2005, 22:46

helium
Wer etwas nachträglich ändert hat in der Planung einen Designfehler gemacht und das dann sicherlich auch nicht nur an dieser Stelle. Daher sollte man Planen bevor man Codet.

Werbeanzeige