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

Palindrome, A palindrome is a string that reads the same from both the ends...

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

Program to develope dating service to form couples, In this assignment, you...

In this assignment, you will develop a program named "match" to be used by a dating service to form couples. Given the number of gentlemen, the number of ladies, and a list of acce

Assign random integers to the variable, (Random Numbers) Write statements t...

(Random Numbers) Write statements that assign random integers to the variable n in the following ranges: a) 1 ≤ n ≤2 b) 1 ≤ n ≤100 c) 0 ≤ n ≤9 d) 1000 ≤ n ≤1112 e)

Lexicographic permutation, Ask questioGiven an integer n and a permutation ...

Ask questioGiven an integer n and a permutation of numbers 1, 2 ... , n-1, n write a program to print the permutation that lexicographically precedes the given input permutation. I

Which one would you prefer - a macro or a function, Which one would you pre...

Which one would you prefer - a macro or a function? Actually it depends on the purpose of program! - In case of macros, corresponding code is inserted directly into your sou

Explain static class members, Static Class Members As we already know a...

Static Class Members As we already know all the objects of the class have dissimilar data members but invoke the similar member functions. Though, there is an exception to this

C/c++ program, luminous jewel polishing necklace,c/c++ programming

luminous jewel polishing necklace,c/c++ programming

multiplication of matrices with compatibility check, Normal 0 ...

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

Explain relational operators, Relational Operators A relational operato...

Relational Operators A relational operator is used to make comparison among two values. All these operators are binary and needs two operands. There are the following relationa

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