Pointers as data members : object pointer « Class « C++ Tutorial






#include <iostream>
 
 class MyClass
 {
 public:
     MyClass();
     ~MyClass();
     int GetAge() const { return *itsAge; }
     void SetAge(int age) { *itsAge = age; }
 
     int GetWeight() const { return *itsWeight; }
     void setWeight (int weight) { *itsWeight = weight; }
 
 private:
     int * itsAge;
     int * itsWeight;
 };
 
 MyClass::MyClass()
 {
     itsAge = new int(2);
     itsWeight = new int(5);
 }
 
 MyClass::~MyClass()
 {
     delete itsAge;
     delete itsWeight;
 }
 
 int main()
 {
     MyClass *objectPointer = new MyClass;
     std::cout << "objectPointer is " << objectPointer->GetAge() << " years old\n";
 
     objectPointer->SetAge(5);
     std::cout << "objectPointer is " << objectPointer->GetAge() << " years old\n";
 
     delete objectPointer;
     return 0;
 }
objectPointer is 2 years old
objectPointer is 5 years old








9.34.object pointer
9.34.1.Use class pointer and class array together
9.34.2.Use & to get object address
9.34.3.Incrementing and decrementing an object pointer
9.34.4.Pointers as data members
9.34.5.Pointers to Class Members
9.34.6.To use a pointer to the object, you need to use the ->* operator
9.34.7.Use new to allocate memory for a class pointer
9.34.8.Passing References to Objects
9.34.9.normal functions accessed from pointer
9.34.10.Sort person objects using array of pointers