•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the C++ section within the Software Development category of DaniWeb, a massive community of 391,950 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 3,890 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our C++ advertiser:
Views: 4181 | Replies: 2
![]() |
Hello. I'm learning C++ out of Sams Teach Yourself C++ in 24 Hours and Accelerated C++ Practical Programming by Example. I've heard these are both good references. Anyway, I just learned about classes and I was wondering how one makes an array of class objects. here is the Cat class I made (no, not exactly the same as the one from the book, but just about :mrgreen: . . .
I think that I have the right method for initializing the array. I am doing Cat pack [8];
however. I think I'm doing it wrong when trying to call a Cat member function to a Cat object in the array. I tried pack.at(0).setage(4); which turned up a lot of errors.
Is this something that can only be accomplished using pointers? I haven't learned enough about pointers yet to do that. If it requires a pointer, I understand and will wait until I learn more, i'd just like to know. Thanks in advance.
-Matt
class Cat
{
private:
int itsage;
std::string itsname;
public:
void setage(int age);
int getage();
void meow();
void setname(std::string name);
std::string getname();
};
//setage sets the cat's age
void Cat::setage(int age)
{
itsage = age;
}
//returns the cat's age
int Cat::getage()
{
return itsage;
}
//meow has the cat meow
void Cat::meow()
{
std::cout << "Meow\n";
}
//setname sets the cat's name
void Cat::setname(std::string name)
{
itsname = name;
}
//getname returns the cat's name
std::string Cat::getname()
{
return itsname;
}I think that I have the right method for initializing the array. I am doing Cat pack [8];
however. I think I'm doing it wrong when trying to call a Cat member function to a Cat object in the array. I tried pack.at(0).setage(4); which turned up a lot of errors.
Is this something that can only be accomplished using pointers? I haven't learned enough about pointers yet to do that. If it requires a pointer, I understand and will wait until I learn more, i'd just like to know. Thanks in advance.
-Matt
•
•
Join Date: Apr 2005
Location: West Virginia
Posts: 105
Reputation:
Rep Power: 4
Solved Threads: 1
![]() |
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
•
•
•
•
•
•
•
•
DaniWeb C++ Marketplace
- Dynamic class members? (C++)
- How do I delete an instance of an Array? (C++)
- Passing Class Objects, Instances (C++)
- Help : Pointers to array of class objects . (C++)
- Initializing an array as a class mamber (C++)
Other Threads in the C++ Forum
- Previous Thread: Warning Error
- Next Thread: I'd like to team up with another beginner



Linear Mode