Illustrate the example of constructor, C/C++ Programming

Assignment Help:

A Constructive Example

Consider an example , to model a user-defined data type for  strings. The object simulates a character array ( string ) using a character pointer and an integer variable for its actual size, which can be explained at its run-time. The object doesn't use a character array , as it may impose a limit on the number of characters that can be stored.

e.g.

# include

# include < string.h>

class string

                 {

                  public :

                                string ( char *s);

                                ~string();

                                void putstr();

                  private :

                                char *cptr;

                                int size;

 };

void main(void)

                 {

                  string s1(" Hello student    \n");

                  string s2 = " Welcome to C++   \n";

                  string s3 = string ( " its fun \n");

 

s1.putstr();

                s2.putstr();

                s3.putstr();

 }

 

string::string(char *s)

                 {

                                size = strlen(s);

                                cptr = new char[size + 1];

                                strcpy(cptr,s);

                 }

string::~string()

                 {

                                delete cptr;

                 }

void string::putstr()

                 {

                                cout << cptr;

                 }

The class explained in the above example contains a character pointer, which allocates memory at run-time, after determining the actual size need. This programme demonstrates the use of class along with the constructor and destructor to make a user defined data type String. The constructor function contains a default argument of null character, which will be assigned to the variable cptr in the absence of an actual parameter. The destructor uses the delete operator to release the memory allocated by the constructor .

 


Related Discussions:- Illustrate the example of constructor

Determine the total resistance of the circuit, For the circuit shown in Fig...

For the circuit shown in Figure, verify (a) the battery voltage V , (b) the total resistance of the circuit, and (c) the values of resistance of resistors R 1 , R 2 and

Define local classes, A cl a s s c a n b e d e f i n e ...

A cl a s s c a n b e d e f i n e d i n s i d e a b l o c k o r f u n c t i o n.   T h i s t yp e cla s s i s known

C program for exchange first & last character, Normal 0 false ...

Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4

Program to calculate pie, This problem familiarizes you with using random n...

This problem familiarizes you with using random numbers in C++. The program is to compute a good approximation of p using a simulation method called "Monte Carlo". The following fi

C/c++, Byteland county is very famous for luminous jewels. Luminous jewels ...

Byteland county is very famous for luminous jewels. Luminous jewels are used in making beautiful necklaces. A necklace consists of various luminous jewels of particular colour. Nec

Destructor , How can I handle a destructor that fails? Need help please pro...

How can I handle a destructor that fails? Need help please provide example also.

Advanced input - output routines, Although we can handle most I/O routines ...

Although we can handle most I/O routines with getc and putc , there are file versions of fgets, fputs, fprintf and fscanf . The syntax is       fgets(stringname,n,filename);   Th

Explain manipulators, Manipulators There are several classes in the ios...

Manipulators There are several classes in the iostream.h header file. One of them is ios class. This class stores the format state. For example, some bits explain the base in w

When should you employ multiple inheritance?, Q: When should you employ mul...

Q: When should you employ multiple inheritance? A:There  are  three  acceptable  answers:-  "Rarely," "Never," and  "while  the  problem  domain cannot be modeled accurately any

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