Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Dynamische Variablen

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
11.04.2006, 17:06 Uhr
nei



Hallo,

kann man in c bzw. c++ dynamische Variablen bzw.
zweidimensionale dynamische Variabeln auch global
deklarieren, so dass es in der ganzen Datei bekannt ist?

Wenn ich z.B. eine 2dimensionale dynamische Variable a
folgendermaßen lokal, innerhalb einer Funktion, deklariere,
wird es fehlerfrei compiliert.

int x=5;int y=5;

double** a;
a = new double *[x];
for (int i = 0; i < x; i++)
{
a[i] = new double[y];
}
Aber als globale Variable erhalte ich mehrere Fehler, wie z.B.
"Fehlende Speicherklasse oder Typbezeichner".

Vielen Dank!

Gruß,
nei
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
11.04.2006, 20:24 Uhr
Pler
Einer von Vielen
(Operator)


Man kann new einfach nicht ausserhalb einer Funktion aufrufen.
cout oder so würdest du ja auch nicht einfach vor main aufrufen.

Das ist übrigens nichts Unix spezifisches. --> verschoben.


Nachtrag:
Da hab ich doch glatt das an dieser Stelle wichtige "nicht" vergessen.

Dieser Post wurde am 11.04.2006 um 20:25 Uhr von Pler editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.04.2006, 07:57 Uhr
Tommix



'Morgen,
die Deklaration kann schon global erfolgen, nicht jedoch die Initialisierung:

C++:
double** a;
int x=5; int y=5;

void InitA()
{
    a = new double *[x];
    for (int i = 0; i < x; i++)
    {
        a[i] = new double[y];
    }
}

void DestroyA()
{
    for (int i = 0; i < x; ++i)
        delete[] a[i];

    delete[] a;
}

int main()
{
    InitA();
    // arbeite mit a
    DestroyA();
    return 0;
}


Allerdings ist sowas in C++ auch eleganter lösbar.
Gruß, Tommix
 
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: