Article View: be.comp.programming
Article #13782C++ OO met DJGPP
From: Luismurf
Date: Thu, 24 May 2001 23:31
Date: Thu, 24 May 2001 23:31
172 lines
4769 bytes
4769 bytes
Hallo,
Heeft hier iemand ervaring met het programma DJGPP?
Ik heb hier een object georienteerd c++ programma, maar ik weet niet
hoe ik dat moet compileren/linken in djgpp
Of zijn er nog andere aan te raden compilers?
dit is het concept:
klasse variabelen
person naam
|
+bediende wedde
| |
| +verkoper verkoopcijfer
|
+arbeider uur
loon
de source:
---person.h------------------------------
#ifndef PERSON.H
#define PERSON.H
class person
{
protected: file://subclasses kunnen die zien
char naam[25];
double salaris;
public:
virtual void display(void);
};
#endif
------------------------------------------
---person.cpp----------------------------
#include <iostream.h>
#include "person.h"
// This method should never be called. If it is ever
// called, it is considered an error.
void
person::display(void)
{
cout << "person::display - missing subclass method\n";
}
------------------------------------------
---beroep.h------------------------------
#ifndef BEROEP.H
#define BEROEP.H
file://Hier worden drie subclasses van person gemaakt.
file://bediende, arbeider en verkoper
#include "person.h"
class bediende : public person
{
double wedde;
public:
void init_data(char in_naam[], double in_wedde);
void display(void);
};
class arbeider : public person
{
double uur;
double loon;
public:
void init_data(char in_naam[], double in_uur, double in_loon);
void display(void);
};
class verkoper : public bediende
{
double verkoopcijfer;
public:
void init_data(char in_naam[], double in_wedde, double
in_verkoopcijfer);
void display(void);
};
#endif
------------------------------------------
---beroep.cpp----------------------------
#include <iostream.h>
#include <string.h>
#include "person.h"
#include "beroep.h"
void
bediende::init_data(char in_naam[], double in_wedde)
{
strcpy(naam,in_naam);
salaris = in_wedde;
}
void
bediende::display(void)
{
cout << "Bediende --> " << naam << " verdient " << salaris <<".\n";
}
void
arbeider::init_data(char in_naam[], double in_uur, double in_loon)
{
strcpy(naam,in_naam);
salaris = in_uur*in_loon;
}
void
arbeider::display(void)
{
cout << "Arbeider --> " << naam << " verdient " << salaris <<
".\n";
}
void
verkoper::init_data(char in_naam[], double in_wedde, double
in_verkoopcijfer)
{
strcpy(naam,in_naam);
salaris = in_wedde+in_verkoopcijfer*0.01;
}
void
verkoper::display(void)
{
cout << "Verkoper --> " << naam << " verdient " << salaris <<
".\n";
}
------------------------------------------
---bereken.cpp---------------------------
#include <iostream.h>
#include "person.h"
#include "beroep.h"
person *staff[10];
int main()
{
bediende *bedpt;
arbeider *arbpt;
verkoper *verpt;
bedpt = new bediende;
bedpt->init_data("Albert",40000.0);
staff[0]=bedpt;
/*
arbpt = new arbeider;
arbpt->init_data("Cyriel",150,300.0);
staff[1]=arbpt;
verpt = new verkoper;
verpt->init_data("Bea",20000.0,1000000.0);
staff[2]=verpt;
for (int index=0;index<3;index++)
{
staff[index]->display();
}
*/
staff[0]->display();
cout << "End of list\n";
return 0;
}
------------------------------------------
~END OF SOS~
Technical Details
Message-ID:
<gb6rgt0ngr5hgfus0qvj8k9o6cuobvu7si@4ax.com>Path:
arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!sn-xit-03!supernews.com!cyclone-sjo1.usenetserver.com!news-out-sjo.usenetserver.com!e420r-sjo4.usenetserver.com!news-out.usenetserver.com!newsfeed.skycache.com!Cidera!cpk-news-hub1.bbnplanet.com!news.gtei.net!opentransit.net!newsfeeds.belnet.be!news.belnet.be!afrodite.telenet-ops.be!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,de0d57e2439214f4,start X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2001-05-24 16:37:36 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!sn-xit-03!supernews.com!cyclone-sjo1.usenetserver.com!news-out-sjo.usenetserver.com!e420r-sjo4.usenetserver.com!news-out.usenetserver.com!newsfeed.skycache.com!Cidera!cpk-news-hub1.bbnplanet.com!news.gtei.net!opentransit.net!newsfeeds.belnet.be!news.belnet.be!afrodite.telenet-ops.be!not-for-mail From: Luismurf <stijn_alive@hotmail.com> Newsgroups: be.comp.programming Subject: C++ OO met DJGPP Message-ID: <gb6rgt0ngr5hgfus0qvj8k9o6cuobvu7si@4ax.com> X-Newsreader: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 172 Date: Thu, 24 May 2001 23:31:48 GMT NNTP-Posting-Host: 213.224.108.200 X-Complaints-To: abuse@pandora.be X-Trace: afrodite.telenet-ops.be 990747108 213.224.108.200 (Fri, 25 May 2001 01:31:48 MET DST) NNTP-Posting-Date: Fri, 25 May 2001 01:31:48 MET DST Organization: Telenet Internet