Explain pointers to objects, C/C++ Programming

Assignment Help:

Pointers to Objects

Passing and returning of objects is, though, not very efficient since it includes passing and returning a copy of the data members. This problem can be eliminated using pointers. Like other variables, objects of class can also have pointers. Declaring a pointer to an object of a certain class is same as declaring a pointer to a variable of any other data type. A pointer variable having the address of an object is said to be pointing to that object. Pointers to objects can be used to make a call by address or for dynamic memory allocation. Just like structure pointer, a pointer to an object also uses the arrow operator to access its members. Like pointers to other data types, a pointer to an object also has only one word of memory. It has to be made to point to an already existing object or allocated memory using the keyword 'new'.

e.g.

                string str;             // Object

                string *sp;           // Pointer to an object

                sp = &str;             // Assigns address of an existing object

                sp = new string // Allocates memory with new.

A simple example of using pointers to objects is given below.

                class player

                 {

                  public :

                                                void getstats(void);

                                                void showstats(void);

                  private :                                                            

                                                char  name[40];

                                                int   age;

                                                int   runs;

                                                int   tests;

                                                float average;

                                     float calcaverage(void);

                };

 void main()

                  {

                    player Sachin;

                                Sachin.getstats();

                                Sachin.showstats();

                  player  *Dravid;

                                Dravid = new player;

 

                                Dravid->getstats();

                                Dravid->showstats();

                  }

 


Related Discussions:- Explain pointers to objects

What are the debugging methods you employ while came across , What are the ...

What are the debugging methods you employ while came across a problem? A: Debugging with tools such as: 1.      DBG, GDB ,Forte, Visual Studio. 2.      Using tusc to trace

Decodethecode.h, decodes the sending smuggler string from the number format...

decodes the sending smuggler string from the number format into plain text

Assignment, write a c program chat illustrates the creation of child proces...

write a c program chat illustrates the creation of child process using fork system call. One process finds sum of even series and other process finds sum of odd series.

PLS URGENT HELP WITH C++, Pls i only need help with program 2. #include ...

Pls i only need help with program 2. #include #include using namespace std; int main() { int FilingStatus; cout cout cout cout cout cout

TCP, check this link: http://cactus.eas.asu.edu/partha/Teaching/430.2013/...

check this link: http://cactus.eas.asu.edu/partha/Teaching/430.2013/Project/proj-2.2013.htm

Reverse a string - c ++ program, Reverse a string - C ++ program: Writ...

Reverse a string - C ++ program: Write a program in c to reverse a string. int main() {     Stack theStack;     String reverse("reverse");       cout

What is the conditional expression operator, The Conditional Expression Ope...

The Conditional Expression Operator An alternate method to using a simple if-else construct is the conditional expressions operator, ?:   A conditional expression operato

Function with two arguments, Write out pseudocode for a function called "an...

Write out pseudocode for a function called "and" that takes two arguments, both booleans, and returns the logical and of the inputs. DO NOT use the logical and operator: instead, w

Decoding the messages, 6999066263304447777077766622337778 -----> message se...

6999066263304447777077766622337778 -----> message sent by the first smuggler. my name is robert---------> message decoded by the second smuggler. Where ‘0’ denotes the "space".

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd