"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

C++: Dynamische Arrays

vossi 12.10.2003 - 21:07 1579 23
Posts

vossi

been there, done that
Avatar
Registered: Feb 2003
Location: Vienna
Posts: 1436
Ich versuche gerade mit einem Windows GCC und dem Palm Dev Tools für Palm zu entwickeln und da dies auf ANSI C++ basiert möchte ich folgendes tun:

Ich habe ein struct

struct Wein{
int wein_id;
char Name[50];
char Gebiet[50];
char Lage[50];
char Rebsorte[50];
int Weinsorte;
int Erzeuger;
int Weinart;
int Jahrgang;
float Trinktemp;
int minBestand;
};

//Datentyp
typedef struct Wein WeinTypeRecord;
//Pointer
typedef struct Wein* WeinTypeRecordPtr;

dann die Datentypen

ich möchte jetzt folgendes .. zur Laufzeit möchte ich einen Array von WeinTypeRecords erstellen ABER es können später noch weine hinzugefügt bzw. gelöscht werden.

Im Grunde genommen dynamische Arrays für C++ .. da ich aber keine Aufwendigen Bibliotheken zur Verfügung habe würde ich gerne wissen wie das mit malloc und dem ganzen Zeug hinhaut.

TIA vossi

that

Moderator
Hoffnungsloser Optimist
Avatar
Registered: Mar 2000
Location: MeidLing
Posts: 11338
In C++ gibts dynamische Arrays:

#include <vector>

...

vector<Wein> Weine;

vossi

been there, done that
Avatar
Registered: Feb 2003
Location: Vienna
Posts: 1436
#include <vector>

Ausgabe des Compilers: wein.h:2: vector: No such file or directory

vector is in der MFC drinnen nachdem was ich gesehen habe und die habe ich nicht wenn ich auf GCC compile .. also steht die Frage leider immer noch im Raum :(

that

Moderator
Hoffnungsloser Optimist
Avatar
Registered: Mar 2000
Location: MeidLing
Posts: 11338
vector gehört zur C++ Standardbibliothek, hat mit der MFC genau nix zu tun, und wenns bei deinem Compiler nicht dabei ist, dann hast du entweder eine uralte Version oder vergessen, C++-Support ("g++"?) zu installieren.

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
Zitat von that
vector gehört zur C++ Standardbibliothek, hat mit der MFC genau nix zu tun, und wenns bei deinem Compiler nicht dabei ist, dann hast du entweder eine uralte Version oder vergessen, C++-Support ("g++"?) zu installieren.

falsch.. vector gehört zur standard template library (stl). mehr darüber weiss Mr. Google.

Aiwa

OC Addicted
Avatar
Registered: Jun 2003
Location: USA
Posts: 731
... und die STL ist Teil der C++ Standardbibliothek. Welcome to last week.

HaBa

Legend
Dr. Funkenstein
Avatar
Registered: Mar 2001
Location: St. Speidl / Gle..
Posts: 19729
Doppelt verkettete Liste? Sollte doch am einfachsten funktionieren, oder?

vossi

been there, done that
Avatar
Registered: Feb 2003
Location: Vienna
Posts: 1436
http://prc-tools.sourceforge.net/

Damit arbeite ich .. auf einem CygWin weil es die PRC Tools nur für Linux gibt und dies alles in einer IDE eingearbeitet und zusätzlich noch ein FrameWork vom IDE Hersteller welches aber in diesem Fall nicht hilfreich ist (nur für GUI Objekte) ..

Da ich nun keine vector Klasse zur verfügung habe wie es aussieht suche ich nach einer Alternative

weiRd

Addicted
Avatar
Registered: Sep 2001
Location: 0xFF3400F2
Posts: 427
Zitat von vossi
http://prc-tools.sourceforge.net/

Damit arbeite ich .. auf einem CygWin weil es die PRC Tools nur für Linux gibt und dies alles in einer IDE eingearbeitet und zusätzlich noch ein FrameWork vom IDE Hersteller welches aber in diesem Fall nicht hilfreich ist (nur für GUI Objekte) ..

Da ich nun keine vector Klasse zur verfügung habe wie es aussieht suche ich nach einer Alternative

Zitat von HaBa
Doppelt verkettete Liste? Sollte doch am einfachsten funktionieren, oder?

ein post über dir.

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Kommt auf die Aufgabenstellung an. In der wundersamen Welt der C++ Library kann man aber einfach vector gegen list austauschen, und schon hat man eine doppelt verkettete Liste (kann aber natürlich nicht mehr mit [] darauf zugreifen)

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Wenn dein Compiler das nicht unterstützt dann such dir einen neuen (Tip: jeder aktuelle Compiler unterstützt das)

vossi

been there, done that
Avatar
Registered: Feb 2003
Location: Vienna
Posts: 1436
habs gesehn @weird .. doppelt verkettet klingt schonmal gut.

werd ich auch so lösen hilft eh nix :)

HaBa

Legend
Dr. Funkenstein
Avatar
Registered: Mar 2001
Location: St. Speidl / Gle..
Posts: 19729
Zitat von weiRd
ein post über dir.


?


Edit: Ah, check

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Ah, mat fängt an, that's C++-Kenntnisse anzuzweifeln. Jetzt wird's interessant :)

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
grrr.. "I was wrong" (Social Distortion).. hab an Standard C Lib gedacht :)

@that: skillbattle ;)
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz