Data members and member functions

38,765 views 20 slides Nov 09, 2016
Slide 1
Slide 1 of 20
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20

About This Presentation

Presentsakdjhgd


Slide Content

DATA MEMBERS AND MEMBER FUNCTIONS IN OBJECT ORIENTED PROGRAMMING Presented by :- DC2016BTE0044 PUSPITA DAS DC2016BTE0185 SHREYALAXMI TALUKDAR DC2016BTE0195 MARLOM BEY

Introduction Static Data Members Accessing Data Members Defining Member Functions Types of Member Functions Conclusion References Contents

Introduction Data Members: The variables declared inside the class are known as data members . Data members may be private or public. Member functions: The functions declared inside the class are known as member functions . Member functions are methods or functions that are defined inside of objects. G enerally used to manipulate data members and other object data.

Static Data Members Static Data Members are those which are declared by using the static keyword in front of the data members. Static Data Members are always used in the static member function. The static data members are always assigned some values from the outside of the class. Syntax: class Widget { ... static unsigned int g_serial ; ... } ;

Accessing Data Members Accessing Public Data Members Accessing Private Data Members Accessing Protected Data Members

Accessing Public Data Members Following is an example to show how to initialize and use the public data members using the dot (.) operator and the respective object of class . class Student { public : int rollno ; string name; }; int main() { Student A; Student B; A.rollno =1 ; A.name ="Adam"; B.rollno =2 ; B.name ="Bella"; cout <<"Name and Roll no of A is :"<< A.name << A.rollno ; cout <<"Name and Roll no of B is :"<< B.name << B.rollno ; }

Accessing Private Data Members To access, use and initialize the private data member we need to create getter and setter functions, to get and set the value of the data member . class Student { private : int rollno ; public : // public getter and setter functions i nt getRollno () { return rollno ; } void setRollno (int i ) { rollno = i ; } }; int main() { Student A ; A.rollono =1 ; cout << A.rollno ; A.setRollno (1 ); cout << A.getRollno (); //Output will be 1 }

Accessing Protected Data Members Protected data members, can be accessed directly using dot (.) operator inside the subclass of the current class Protected data members can be accessed in the same way as public data members f.rom friend functions or classes and from derived classes .

Defining Member Function Inside the class definition Outside the class definition

Inside The Class D efinition A member function of a class can be defined inside the class. However, when a member function is defined inside the class, the class name and the scope resolution operator are not specified in the function header . Example : class book { char title[30]; float price; public : void getdata (char [],float);  II  declaration void putdata ()//definition inside the class { cout <<"\ nTitle of Book: "<<title; cout <<"\ nPrice of Book: "<<price; };

Outside The C lass D efinition Defining a member function outside a class requires the function declaration to be provided inside the class definition . Example: Class book { //   body of the class } : void book :: getdata (char a[],float b) { // defining member function outside the class Strcpy ( title,a ): price = b: } void book :: putdata () { cout <<"\ nTitle of Book: "<<title; cout <<"\ nPrice of Book: "<<price; }

TYPES OF MEMBER FUNCTION Simple Function Static Function Const Function Inline Function Friend Function

Simple Function These are the basic member function, which don,t have any special keyword like static etc. as prefix . Example: return_type functionName ( parameter_list ) { function body; }

Static Member Function A function is made static by using static keyword with function name . It can be called using the object and the direct member access (.) operator. But, its more typical to call a static member function by itself, using class name and scope resolution (::) operator. A function is made static by using static keyword with function name Example: class X { public: static void f(){}; }; int main() { X ::f(); // calling member function directly with class name }

Const Member Functions Const keyword makes variables constant, that means once defined, there values can't be changed . When used with member function, such member functions can never modify the object or its related data members. // Basic Syntax of const Member Function void fun() const {}

Inline Member F unctions All the member functions defined inside the class definition are by default declared as Inline. Member functions containing a few lines of code are usually declared inline. For example: Class Y { char*a ; public: Char* f();{return a;} }; Is equivalent to Char Z { char*a; Public: char* f(); }; Inline char* Z::f() {return a;}

Friend Member F unctions Friend functions are made to give  private  access to non-class functions. You can declare a global function as friend, or a member function of other class as friend . Example : class WithFriend { int i ; public : friend void fun(); // Global function as friend }; void fun() { w ithFriend wf ; wf.i =10 ; // Access to private data member cout << wf.i ; } int main() { fun (); //Can be called directly }

C onclusion A static member function can only access static data members of the class, it cannot access instance data members. A private member function can only be called by another function that is a member class. Protected keywords are only used in the inheritance context. Objects created by object oriented programs can easily be reused in other programs

References Books [ 1]. By E Balagurusamy “Object Oriented Programming With C++” , TATA McGraw- Hill Publishing Company Limited, 2008 Web Links [2]. https://www3.ntu.edu.sg/home/ehchua/programming/cpp/cp3_OOP.html ---OOP Basics [3]. http://www.studytonight.com/cpp/accessing-data- members.php ---Accessing Data Members [4]. http ://www.studytonight.com/cpp/member-functions-cpp.php ---Member Functions [5]. http :// www.studytonight.com/cpp/types-of-member-function.php ---Types of Member Function

THANK YOU