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

Dave

Alter Hase

  • »Dave« ist der Autor dieses Themas

Beiträge: 757

Wohnort: Berlin

  • Private Nachricht senden

1

05.01.2005, 19:24

namespaces

wenn man innerhalb eines namenbereiches eine datei einbindet, werden die darin enthaltenen klassen scheinbar zwar dem namespace hinzugefügt (lassen sich aufrufen und verwenden), visual studio zeigt sie in der klassenhierachie jedoch nicht mehr an.
bin etwas irritiert, da etwas in der art ja unverzichtbar ist, man will ja nicht alles in eine datei schreiben und für jede datei nen eigenen namespace ist auch unpraktisch. geht das irgendwie anders, sodass vs es auch mitbekommt?

2

06.01.2005, 01:43

Namespaces sind Dateiübergreifend. Es ist keine Elegante Lösung die Header innerhalb eines Namespaces einzufügen. Vor allem weil #include nicht einmal ein C/C++ Schlüsselwort ist. Es ist eine PräProzessor-Anweisung.

Schreib deine Namespaces einfach, ohne auf Files zu achten und mach kein include inerhalb eines Namespaces. Das ist unschön und kann sauch sehr unangenehm werden.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

helium

Treue Seele

Beiträge: 180

Wohnort: NRW, Burscheid (nahe Köln)

  • Private Nachricht senden

3

06.01.2005, 18:17

Um das ganze mal Praktisch zu Zeigen:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
// foo.hpp

#ifndef FOO_HPP
#define FOO_HPP

namespace Blabla {
   void foo ();
}

#endif


C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
// foo.cpp

#include "foo.hpp"

namespace Blabla {
   void foo ()
   {
      ...
   }
}


C-/C++-Quelltext

1
2
3
4
5
6
7
// main.cpp

#include "foo.hpp"

int main ()
{
   Blabla::foo();
}

Dave

Alter Hase

  • »Dave« ist der Autor dieses Themas

Beiträge: 757

Wohnort: Berlin

  • Private Nachricht senden

4

06.01.2005, 18:21

bin gerade etwas verwirrt. irgendwie hats gestern nicht geklappt, meinen namespace über zwei dateien aufzuteilen. weiß nicht woran es lag, jetzt gehts aber :confused:
danke.

Werbeanzeige