Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » frage wegen scope

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
06.12.2005, 22:01 Uhr
~said
Gast


beispiel:

//...

struct my_collector {
unsigned char BYTE;
char* TEXT;
int LENGTH;
};

int main () {

int menge;

cout << "Menge der Collectoren: "; cin >> menge;

my_collector collector[menge];

//...

}

Nun hier das Problem:

Die Menge der benötigen Collectoren stehen am Anfang noch nicht fest,
sondern werden erst nach der Eingabe von Benutzer bekannt.

Und hier meine Frage:

Das Problem hier ist, das die erzeugten Collectoren nur unter Funktion
"main" verfügbar sind und von anderen Funktionen nicht verwendet
werden können. Das ist auch logisch, weil die Deklaration im Scope
der Funktion "main" liegt.

Nur, wie kann ich es erreichen, das ich die Zeile

my_collector collector[menge];

so definiere, das es von allen anderen Funktionen auch verwendet
werden kann, ohne das ich am Anfang erzwungenerweise
eine feste Menge an Collectoren vereinbaren muss.

Ich meine, es muss doch eine Möglichkeit geben, die Menge
an benötigen Collectoren zu Laufzeit festzulegen, und
gleichzeitig dafür zu sorgen, das auch andere Funktionen
zugriff auf die Collectoren haben. Also muss das ganze
ja irgendwie global deklariert werden. Nur das hier geht
ja nicht:

//...

my_collector collector[menge];

int main () {

//...

}

wäre ja auch blödsinn... mensch... versteht jemand mein
problem... ich wäre ehrlich sehr dankbar, wenn mir
jemand eine ordentliche lösung für das problem
aufzeigen könnte...


mfg
said
nevadaportland@gmx.de
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
06.12.2005, 23:01 Uhr
(un)wissender
Niveauwart


nimm std::vector.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
06.12.2005, 23:05 Uhr
~said
Gast


std::vector?

kannst du mir einen beispiel angeben, wie ich das genau machen soll?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
07.12.2005, 08:43 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



C++:
#include <vector>

std::vector<char> my_collector;
my_collector.push_back('a');



wenns aber nur nen string verschnitt sein soll kanst du auch gleich einen std::string nehmen...
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 07.12.2005 um 08:43 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
07.12.2005, 09:11 Uhr
(un)wissender
Niveauwart


@~said
Gib das doch einfach mal bei google an und schau in die STL-Doku (ist auf dieser Seite verlinkt), schon hast du alles was du willst.
Für deine Collectoren std::vector und für deinen TEXT std::string.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: