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

Abcd, #question.gsdjfhjhjfkfk.

#question.gsdjfhjhjfkfk.

Program for manage the tasks of a robot, Consider a group of n robots, numb...

Consider a group of n robots, numbered R2D1 through R2Dn, and m tasks, numbered 1 through m. Tasks can be different and robots are specialized, hence a given robot can only perform

I need plugin for amibroker using c++, I need plugin for amibroker using c+...

I need plugin for amibroker using c++ Project Description: Need to prepare plugin for amibroker using c++. Should be system bound after installing. System should show based o

How to double to int, char P[100]; double X=533.8*22500; sprintf(P...

char P[100]; double X=533.8*22500; sprintf(P,"%f %u",X,(unsigned int)X); MessageBox(P,"SSS"); //12010500.000 12010499

Write code to implement constructor, Study the following  class diagram, ad...

Study the following  class diagram, additional information  and answer  the  questions that follow: MovieTicket movieName: string TicketPrice: doub

Convert afl amibroker to dll, Project Description: I need to convert AFL...

Project Description: I need to convert AFL code of Amibroker to DLL plugin to hide original formula, and also to protect the DLL and making it hardware locked. I need to wrap th

Is there anything you can do in c++ which you cannot do in c, A: No. There ...

A: No. There is nothing you can do in C++ which you cannot do in C. In spite of everything

Program to design list in c, Program to design list in c: Write a prog...

Program to design list in c: Write a program in c to insert the values in list void main() { int i=0; char a[20]; clrscr(); printf("Enter the line\n");

Stack and queues, Using Figure 10.2 as a model, illustrate the result of ea...

Using Figure 10.2 as a model, illustrate the result of each operation in the sequence ENQUEUE.Q; 4/, ENQUEUE.Q; 1/, ENQUEUE.Q; 3/, DEQUEUE.Q/, ENQUEUE.Q; 8/, and DEQUEUE.Q/ on an i

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