| delorie.com/archives/browse.cgi | search |
| From: | "Jesper de Jong" <niemand AT nergens DOT xs4all DOT nl> |
| Newsgroups: | comp.lang.c++,comp.lang.c++.moderated,comp.os.msdos.djgpp |
| Subject: | Re: Using one copy of class for many other classes |
| Date: | 27 Jun 1997 21:55:29 -0400 |
| Organization: | XS4ALL, networking for the masses |
| Lines: | 71 |
| Sender: | cppmods AT netlab DOT cs DOT rpi DOT edu |
| Approved: | dietmar DOT kuehl AT uni-konstanz DOT de |
| Message-ID: | <5p1quh$n9n@netlab.cs.rpi.edu> |
| References: | <5p0epd$gtj AT netlab DOT cs DOT rpi DOT edu> |
| NNTP-Posting-Host: | horn.informatik.uni-konstanz.de |
| To: | djgpp AT delorie DOT com |
| DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
scochran AT shoalsnet DOT com schreef in artikel <5p0epd$gtj AT netlab DOT cs DOT rpi DOT edu>...
> In C++ I've run into yet another brick wall. I have a class called arena
> that is a 50x50 arena for obstacles and robots (for now anyway). I'm
> running into problems because I only want to have one copy of the arena
and
> multiple copies of the robots or whatever I want to put.
>
> Would I do it something like this?
Have you ever heard of pointers?? Understanding pointers is *essential*
when you want to program in C or C++.
> int robot::robot(arena arenacopy)
Constructors do not have return values (not even void), so the "int" here
is illegal.
If each robot needs a pointer top the arena it's in, just add a pointer to
the arena member variable in class robot:
class robot
{
private:
arena * pArena;
public:
robot(arena * ptr);
int robofunction();
// the rest of robot here...
};
robot::robot(arena * ptr) : pArena(ptr)
{ }
If you don't understand all this, you need to learn some more C++. Study
some good books or take a course.
> int robot::robofunction(void)
> {
> arenacopy.arenafunction();
> }
int robot::robofunction()
{
pArena->arenafunction();
}
> Would this work?
>
> Also I have an enum to define the objects in a buffer of the arena would
it
> be best to derive a class from arena and put all the enum and enum
specific
> (the ones that use the enums) functions there?
Take a C++ course and reconsider your design.
> <TIA>
> Micah Cochran
> scochran AT shoalsnet DOT com
Jesper
--
NOTE: My return address is not my e-mail address to avoid
automatic spam e-mail. Spammers are invited to send mail
to postmaster AT localhost. My address is jesper (at) xs4all.nl.
[ Send an empty e-mail to c++-help AT netlab DOT cs DOT rpi DOT edu for info ]
[ about comp.lang.c++.moderated. First time posters: do this! ]
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |