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

Programming C/C++ need a answer, 3. Write a program to encrypt and decrypt...

3. Write a program to encrypt and decrypt strings of characters using the following ciphers: a) Caesar cipher b) Vigenere cipher c) Matrix transposition cipher Your program shoul

Evaluate the credit worthiness of a client, Write a C++ program that can be...

Write a C++ program that can be used to evaluate the credit worthiness of a client. The program reads the credit limit and the price and quantity of the item to be purchased by the

Main-elipse -vector-arrays in cpp , Unlike C++, other programming languages...

Unlike C++, other programming languages have associative arrays that allow array indices to be strings instead of just integers. You are to create a template class, SVector, that i

Thermodynamics, the program that solve the efficiency of otto cycle

the program that solve the efficiency of otto cycle

C++, superposition of two waves

superposition of two waves

Menus, create a shopping cart in c++

create a shopping cart in c++

Compiler design limiting instruction, Ravi is a newbie to the programming a...

Ravi is a newbie to the programming and while learning the programming language he came to know the following rules: · Each program must start with ''{'' and end with '

External iterator and an internal iterator, What is the difference between ...

What is the difference between an external iterator and an internal iterator? Ans) An internal iterator is executed with member functions of the class that has items to step th

Program to check even and odd numbers, Program to check even and odd number...

Program to check even and odd numbers: int main() {                 int  your_number;                 cout                 cin >> your_number;

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