🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #10228

Re: Vraagje over klassen (class) (C++)

#10228
From: Christof Laeremans
Date: Mon, 18 Mar 2002 20:45
131 lines
4792 bytes
dus dit staat in mijn class (een string teruggeven aan het de main)

const int lengte = 10;

class mijnclass
{
    void getString(char * string)
    {
        strncpy(_string,string,lengte); //lengte is de dimensie van je array
    }
};

in mijn hoofdprogramma ziet dat er zo uit.

int main()
{
       mijnclass klasse

      char mijnString[lengte];

      klasse.getString(mijnString); //de waarde van de string die in de
class is, wordt doorgegeven aan mijnString en die kan je dan op zijn beurt
afdrukken in je main.

    cout<<"De string is: "<<mijnString;

    return 0;
}

zo ziet je main er dan uit.

"DaVa" <D-man@pandora.be> wrote in message
news:GVpl8.16303$DE4.1899@afrodite.telenet-ops.be...
>
> "Christof Laeremans" <christof_laeremans@NOSPAM.hotmail.com> schreef in
> bericht news:a7439i$10dqf$1@sinclair.be.wanadoo.com...
> > 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
> > >
> > >
> >
> >
>
> Zou je nog iets meer info kunnen geven over hoe ik nu net een string moet
> doorgeven aan de main (gebruik makend van pointers), hoe ziet de main er
dan
> uit?
>
>
Technical Details
Message-ID: <a75jlb$195e2$1@sinclair.be.wanadoo.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-01!supernews.com!newsfeed.online.be!newsfeeds.belnet.be!news.belnet.be!news.be.wanadoo.com!news.wanadoo.be!not-for-mail
References: <aN8l8.14631$DE4.1677@afrodite.telenet-ops.be> <a7439i$10dqf$1@sinclair.be.wanadoo.com> <GVpl8.16303$DE4.1899@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-18 12:45:35 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-01!supernews.com!newsfeed.online.be!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 21:45:32 +0100
Organization: Wanadoo Belgium
Lines: 133
Message-ID: <a75jlb$195e2$1@sinclair.be.wanadoo.com>
References: <aN8l8.14631$DE4.1677@afrodite.telenet-ops.be> <a7439i$10dqf$1@sinclair.be.wanadoo.com> <GVpl8.16303$DE4.1899@afrodite.telenet-ops.be>
NNTP-Posting-Host: adsl-140-6.wanadoo.be
X-Trace: sinclair.be.wanadoo.com 1016484332 1349058 213.177.140.6 (18 Mar 2002 20:45:32 GMT)
X-Complaints-To: abuse@wanadoo.be
NNTP-Posting-Date: Mon, 18 Mar 2002 20:45:32 +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