SlideShare ist ein Scribd-Unternehmen logo
1 von 20
DATA MEMBERS AND MEMBER
FUNCTIONS IN OBJECT
ORIENTED PROGRAMMING
Presented by :-
DC2016BTE0044 PUSPITA DAS
DC2016BTE0185 SHREYALAXMITALUKDAR
DC2016BTE0195 MARLOM BEY
 Introduction
 Static Data Members
 Accessing Data Members
 Defining Member Functions
 Types of Member Functions
 Conclusion
 References
Contents
Introduction
 Data Members:
O The variables declared inside the class are known as data members.
O Data members may be private or public.
 Member functions:
O The functions declared inside the class are known as member functions.
O Member functions are methods or functions that are defined inside of
objects.
O Generally 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:
classWidget {
...
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()
{
StudentA;
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
int 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
InsideThe Class Definition
 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;
};
OutsideThe Class Definition
 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 Functions
 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:
ClassY
{
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 Functions
 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()
{
withFriend wf;
wf.i=10; //Access to private data member
cout << wf.i;
}
int main()
{
fun(); //Can be called directly
}
Conclusion
 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 ProgrammingWith 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

Weitere ähnliche Inhalte

Was ist angesagt?

Access specifier
Access specifierAccess specifier
Access specifierzindadili
 
Friend function & friend class
Friend function & friend classFriend function & friend class
Friend function & friend classAbhishek Wadhwa
 
Operator Overloading
Operator OverloadingOperator Overloading
Operator OverloadingNilesh Dalvi
 
Types of Constructor in C++
Types of Constructor in C++Types of Constructor in C++
Types of Constructor in C++Bhavik Vashi
 
Storage classes in c++
Storage classes in c++Storage classes in c++
Storage classes in c++Jaspal Singh
 
class and objects
class and objectsclass and objects
class and objectsPayel Guria
 
Inheritance in c++
Inheritance in c++Inheritance in c++
Inheritance in c++Vishal Patil
 
Friend functions
Friend functions Friend functions
Friend functions Megha Singh
 
FUNCTIONS IN c++ PPT
FUNCTIONS IN c++ PPTFUNCTIONS IN c++ PPT
FUNCTIONS IN c++ PPT03062679929
 
Life cycle-of-a-thread
Life cycle-of-a-threadLife cycle-of-a-thread
Life cycle-of-a-threadjavaicon
 
Access specifiers (Public Private Protected) C++
Access specifiers (Public Private  Protected) C++Access specifiers (Public Private  Protected) C++
Access specifiers (Public Private Protected) C++vivekkumar2938
 
08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.pptTareq Hasan
 
File handling in C++
File handling in C++File handling in C++
File handling in C++Hitesh Kumar
 
Classes and objects
Classes and objectsClasses and objects
Classes and objectsNilesh Dalvi
 
Abstract class in c++
Abstract class in c++Abstract class in c++
Abstract class in c++Sujan Mia
 

Was ist angesagt? (20)

File handling in c
File handling in cFile handling in c
File handling in c
 
Access specifier
Access specifierAccess specifier
Access specifier
 
Friend function & friend class
Friend function & friend classFriend function & friend class
Friend function & friend class
 
[OOP - Lec 18] Static Data Member
[OOP - Lec 18] Static Data Member[OOP - Lec 18] Static Data Member
[OOP - Lec 18] Static Data Member
 
Operator Overloading
Operator OverloadingOperator Overloading
Operator Overloading
 
Types of Constructor in C++
Types of Constructor in C++Types of Constructor in C++
Types of Constructor in C++
 
Storage classes in c++
Storage classes in c++Storage classes in c++
Storage classes in c++
 
class and objects
class and objectsclass and objects
class and objects
 
Inheritance in c++
Inheritance in c++Inheritance in c++
Inheritance in c++
 
Friend functions
Friend functions Friend functions
Friend functions
 
FUNCTIONS IN c++ PPT
FUNCTIONS IN c++ PPTFUNCTIONS IN c++ PPT
FUNCTIONS IN c++ PPT
 
Life cycle-of-a-thread
Life cycle-of-a-threadLife cycle-of-a-thread
Life cycle-of-a-thread
 
Array Of Pointers
Array Of PointersArray Of Pointers
Array Of Pointers
 
Access specifiers (Public Private Protected) C++
Access specifiers (Public Private  Protected) C++Access specifiers (Public Private  Protected) C++
Access specifiers (Public Private Protected) C++
 
08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt08 c++ Operator Overloading.ppt
08 c++ Operator Overloading.ppt
 
File handling in C++
File handling in C++File handling in C++
File handling in C++
 
07. Virtual Functions
07. Virtual Functions07. Virtual Functions
07. Virtual Functions
 
This pointer
This pointerThis pointer
This pointer
 
Classes and objects
Classes and objectsClasses and objects
Classes and objects
 
Abstract class in c++
Abstract class in c++Abstract class in c++
Abstract class in c++
 

Ähnlich wie Data members and member functions

chapter-7-classes-and-objects.pdf
chapter-7-classes-and-objects.pdfchapter-7-classes-and-objects.pdf
chapter-7-classes-and-objects.pdfstudy material
 
Object and class presentation
Object and class presentationObject and class presentation
Object and class presentationnafisa rahman
 
Presentation on class and object in Object Oriented programming.
Presentation on class and object in Object Oriented programming.Presentation on class and object in Object Oriented programming.
Presentation on class and object in Object Oriented programming.Enam Khan
 
oop lecture 3
oop lecture 3oop lecture 3
oop lecture 3Atif Khan
 
Classes, objects and methods
Classes, objects and methodsClasses, objects and methods
Classes, objects and methodsfarhan amjad
 
Unit vi(dsc++)
Unit vi(dsc++)Unit vi(dsc++)
Unit vi(dsc++)Durga Devi
 
classandobjectunit2-150824133722-lva1-app6891.ppt
classandobjectunit2-150824133722-lva1-app6891.pptclassandobjectunit2-150824133722-lva1-app6891.ppt
classandobjectunit2-150824133722-lva1-app6891.pptmanomkpsg
 
CLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCE
CLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCECLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCE
CLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCEVenugopalavarma Raja
 
Lecture-11 Friend Functions and inline functions.pptx
Lecture-11 Friend Functions and inline functions.pptxLecture-11 Friend Functions and inline functions.pptx
Lecture-11 Friend Functions and inline functions.pptxrayanbabur
 
Class objects oopm
Class objects oopmClass objects oopm
Class objects oopmShweta Shah
 
+2 CS class and objects
+2 CS class and objects+2 CS class and objects
+2 CS class and objectskhaliledapal
 
object oriented programming language by c++
object oriented programming language by c++object oriented programming language by c++
object oriented programming language by c++Mohamad Al_hsan
 

Ähnlich wie Data members and member functions (20)

chapter-7-classes-and-objects.pdf
chapter-7-classes-and-objects.pdfchapter-7-classes-and-objects.pdf
chapter-7-classes-and-objects.pdf
 
Object and class presentation
Object and class presentationObject and class presentation
Object and class presentation
 
Class and object
Class and objectClass and object
Class and object
 
Lecture 2 (1)
Lecture 2 (1)Lecture 2 (1)
Lecture 2 (1)
 
C++ Notes
C++ NotesC++ Notes
C++ Notes
 
class c++
class c++class c++
class c++
 
Presentation on class and object in Object Oriented programming.
Presentation on class and object in Object Oriented programming.Presentation on class and object in Object Oriented programming.
Presentation on class and object in Object Oriented programming.
 
OOPs & C++ UNIT 3
OOPs & C++ UNIT 3OOPs & C++ UNIT 3
OOPs & C++ UNIT 3
 
ccc
cccccc
ccc
 
oop lecture 3
oop lecture 3oop lecture 3
oop lecture 3
 
DS Unit 6.ppt
DS Unit 6.pptDS Unit 6.ppt
DS Unit 6.ppt
 
Classes, objects and methods
Classes, objects and methodsClasses, objects and methods
Classes, objects and methods
 
Unit vi(dsc++)
Unit vi(dsc++)Unit vi(dsc++)
Unit vi(dsc++)
 
classandobjectunit2-150824133722-lva1-app6891.ppt
classandobjectunit2-150824133722-lva1-app6891.pptclassandobjectunit2-150824133722-lva1-app6891.ppt
classandobjectunit2-150824133722-lva1-app6891.ppt
 
CLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCE
CLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCECLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCE
CLASSES AND OBJECTS IN C++ +2 COMPUTER SCIENCE
 
Lecture-11 Friend Functions and inline functions.pptx
Lecture-11 Friend Functions and inline functions.pptxLecture-11 Friend Functions and inline functions.pptx
Lecture-11 Friend Functions and inline functions.pptx
 
Class objects oopm
Class objects oopmClass objects oopm
Class objects oopm
 
Class and object in C++ By Pawan Thakur
Class and object in C++ By Pawan ThakurClass and object in C++ By Pawan Thakur
Class and object in C++ By Pawan Thakur
 
+2 CS class and objects
+2 CS class and objects+2 CS class and objects
+2 CS class and objects
 
object oriented programming language by c++
object oriented programming language by c++object oriented programming language by c++
object oriented programming language by c++
 

Kürzlich hochgeladen

notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptMsecMca
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksMagic Marks
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwaitjaanualu31
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxJuliansyahHarahap1
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXssuser89054b
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueBhangaleSonal
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsvanyagupta248
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...HenryBriggs2
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptNANDHAKUMARA10
 
Bridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptxBridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptxnuruddin69
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . pptDineshKumar4165
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.Kamal Acharya
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityMorshed Ahmed Rahath
 
Air Compressor reciprocating single stage
Air Compressor reciprocating single stageAir Compressor reciprocating single stage
Air Compressor reciprocating single stageAbc194748
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"mphochane1998
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startQuintin Balsdon
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdfKamal Acharya
 

Kürzlich hochgeladen (20)

notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.ppt
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic Marks
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptx
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.ppt
 
Bridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptxBridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptx
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
Air Compressor reciprocating single stage
Air Compressor reciprocating single stageAir Compressor reciprocating single stage
Air Compressor reciprocating single stage
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 

Data members and member functions

  • 1. DATA MEMBERS AND MEMBER FUNCTIONS IN OBJECT ORIENTED PROGRAMMING Presented by :- DC2016BTE0044 PUSPITA DAS DC2016BTE0185 SHREYALAXMITALUKDAR DC2016BTE0195 MARLOM BEY
  • 2.  Introduction  Static Data Members  Accessing Data Members  Defining Member Functions  Types of Member Functions  Conclusion  References Contents
  • 3. Introduction  Data Members: O The variables declared inside the class are known as data members. O Data members may be private or public.  Member functions: O The functions declared inside the class are known as member functions. O Member functions are methods or functions that are defined inside of objects. O Generally used to manipulate data members and other object data.
  • 4. 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: classWidget { ... static unsigned int g_serial ; ... } ;
  • 5. Accessing Data Members  Accessing Public Data Members  Accessing Private Data Members  Accessing Protected Data Members
  • 6. 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() { StudentA; 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; }
  • 7. 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 int 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 }
  • 8. 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.
  • 9. Defining Member Function  Inside the class definition  Outside the class definition
  • 10. InsideThe Class Definition  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; };
  • 11. OutsideThe Class Definition  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; }
  • 12. TYPES OF MEMBER FUNCTION  Simple Function  Static Function  Const Function  Inline Function  Friend Function
  • 13. 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; }
  • 14. 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 }
  • 15. 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 {}
  • 16. Inline Member Functions  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: ClassY { char*a ; public: Char* f();{return a;} }; Is equivalent to Char Z { char*a; Public: char* f(); }; Inline char* Z::f() {return a;}
  • 17. Friend Member Functions  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() { withFriend wf; wf.i=10; //Access to private data member cout << wf.i; } int main() { fun(); //Can be called directly }
  • 18. Conclusion  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
  • 19. References ■ Books [1]. By E Balagurusamy “Object Oriented ProgrammingWith 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