Article View: be.comp.programming
Article #10218Re: Vraagje over klassen (class) (C++)
From: Christof Laeremans
Date: Mon, 18 Mar 2002 07:00
Date: Mon, 18 Mar 2002 07:00
77 lines
3374 bytes
3374 bytes
Een set functie vb. setLeeftijd is om een waarde die komt van je main() door
te geven aan de class.
Een voorbeeld.
Class Persoon
{
Private:
int _leeftijd;
char _naam[15];
Public:
Persoon() //Dit is een constructor, voor het initialiseren van de
gedeclareerde variabelen.
{
_leeftijd = 0;
}
//de set functie
void setLeeftijd(int leeftijd)
{
_leeftijd = leeftijd;
}
De waarde (hier leeftijd) komt binnen in de class via de parameter
leeftijd.
//de get functie, deze zorgt ervoor dat de waarde van de class wordt
teruggegeven aan de main()
//aangezien hij een waarde moet teruggeven, moet deze functie een
returntype hebben.
int getLeeftijd()
{
return _leeftijd;
}
wil je nu een string teruggeven aan je hoofdprogramma, dan is het wel even
speciaal.
char * getNaam()
{
return _naam;
}
Met het returnen van een string, moet je werken met een pointer naar de
getNaam functie. Nu, op deze laaste zijn er nog andere mogelijkheden.
Uit mijn les C++ heb ik geleerd dat je met deze methode je private leden
niet genoeg afschermt voor de buitenwereld.
Een andere mogelijkheid zou zijn.
char getNaam(char *naam)
{
strncpy(naam,_naam,15);
}
maar als je meer info wilt dat moet je eens een kijkje gaan nemen op
www.bruceeckel.com en daar kan je zijn boek (Thinking in C++ 2nd Edition)
downloaden.
Met vriendelijke groeten,
Christof Laeremans
"DaVa" <D-man@pandora.be> wrote in message
news:aN8l8.14631$DE4.1677@afrodite.telenet-ops.be...
> Hallo allemaal,
>
> Ik heb een vraagje over de taal c++ .. meer bepaald over klassen,
> ik heb een klasse gemaakt (wat die doet maakt niet uit), nu is het de
> bedoeling dat ik gegevens teruggeef aan mijn main (via return), maar er is
> mij altijd gezegd dat je de interne gegevens van een klasse nooit
> rechtstreeks mag doorgegeven aan een externe functie/main (je moet dus de
> gegevens in een klasse afschermen van de buitenwereld) .. hoe moet ik nu
> juist werken met die return (is iets met get/set functies in uw klasse...
> kan iemand mij hierover meer info geven ... dank u wel)
>
> groetjes .. DaVa
>
>
Technical Details
Message-ID:
<a7439i$10dqf$1@sinclair.be.wanadoo.com>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!supernews.com!194.159.255.21.MISMATCH!dispose.news.demon.net!demon!colt.net!newsfeeds.belnet.be!news.belnet.be!news.be.wanadoo.com!news.wanadoo.be!not-for-mailReferences:
<aN8l8.14631$DE4.1677@afrodite.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,4353de8f92b91cf9 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2002-03-17 23:00:20 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!supernews.com!194.159.255.21.MISMATCH!dispose.news.demon.net!demon!colt.net!newsfeeds.belnet.be!news.belnet.be!news.be.wanadoo.com!news.wanadoo.be!not-for-mail From: "Christof Laeremans" <christof_laeremans@NOSPAM.hotmail.com> Newsgroups: be.comp.programming Subject: Re: Vraagje over klassen (class) (C++) Date: Mon, 18 Mar 2002 08:00:05 +0100 Organization: Wanadoo Belgium Lines: 79 Message-ID: <a7439i$10dqf$1@sinclair.be.wanadoo.com> References: <aN8l8.14631$DE4.1677@afrodite.telenet-ops.be> NNTP-Posting-Host: adsl-140-75.wanadoo.be X-Trace: sinclair.be.wanadoo.com 1016434802 1062735 213.177.140.75 (18 Mar 2002 07:00:02 GMT) X-Complaints-To: abuse@wanadoo.be NNTP-Posting-Date: Mon, 18 Mar 2002 07:00:02 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000