Difference between revisions of "Advanced-C++/C2/Classes-And-Objects/English-timed"

From Script | Spoken-Tutorial
Jump to: navigation, search
 
(3 intermediate revisions by the same user not shown)
Line 14: Line 14:
 
|-
 
|-
 
| 00:09
 
| 00:09
|* '''Classes'''
+
|'''Classes'''
  
 
|-
 
|-
 
| 00:11
 
| 00:11
|* '''Objects'''
+
|'''Objects''' '''Encapsulation''' and
 
+
|-
+
| 00:12
+
|* '''Encapsulation''' and
+
  
 
|-
 
|-
 
| 00:14
 
| 00:14
|* '''Data abstraction.'''
+
|'''Data abstraction.'''
  
 
|-
 
|-
Line 38: Line 34:
 
|-
 
|-
 
| 00:23
 
| 00:23
|*'''Ubuntu OS '''version '''11.10'''
+
|'''Ubuntu OS '''version '''11.10'''
  
 
|-
 
|-
 
| 00:28
 
| 00:28
|*'''g++ compiler '''version '''4.6.1'''
+
|'''g++ compiler '''version '''4.6.1'''
  
 
|-
 
|-
Line 182: Line 178:
 
|-
 
|-
 
|  02:39
 
|  02:39
|: The '''public''' specifier allows the '''data''' to be accessed outside the '''class'''.
+
|The '''public''' specifier allows the '''data''' to be accessed outside the '''class'''.
  
 
|-
 
|-
 
| 02:44
 
| 02:44
|: A '''public''' member can be used anywhere in the program.
+
|A '''public''' member can be used anywhere in the program.
  
 
|-
 
|-
Line 194: Line 190:
 
|-
 
|-
 
| 02:51
 
| 02:51
|: The members declared as '''private''' cannot be used or accessed outside the '''class'''.
+
|The members declared as '''private''' cannot be used or accessed outside the '''class'''.
  
 
|-
 
|-
 
| 02:57
 
| 02:57
|: ''private''' members can be used only by the members of the '''class'''.
+
|'''private''' members can be used only by the members of the '''class'''.
  
 
|-
 
|-
Line 206: Line 202:
 
|-
 
|-
 
| 03:05
 
| 03:05
|* '''protected''' members cannot be accessed from outside the '''class'''.
+
|'''protected''' members cannot be accessed from outside the '''class'''.
  
 
|-
 
|-
 
| 03:10
 
| 03:10
|* They can be accessed by a '''derived''' '''class'''.
+
|They can be accessed by a '''derived''' '''class'''.
  
 
|-
 
|-
Line 270: Line 266:
 
|-
 
|-
 
| 04:12
 
| 04:12
|  Here the value of 'a' is stored in 'x'.
+
|  Here the value of '''a''' is stored in '''x'''.
  
 
|-
 
|-
Line 278: Line 274:
 
|-
 
|-
 
| 04:20
 
| 04:20
| Here 'x' is a '''private''' member.
+
| Here '''x''' is a '''private''' member.
  
 
|-
 
|-
 
| 04:22
 
| 04:22
|To access the '''private parameter''', we used the '''public''' member 'a.'
+
|To access the '''private parameter''', we used the '''public''' member '''a.'''
  
 
|-
 
|-
Line 314: Line 310:
 
|-
 
|-
 
| 04:53
 
| 04:53
|We set the value of 'x' as 4.  
+
|We set the value of '''x''' as 4.  
  
 
|-
 
|-
 
| 04:57
 
| 04:57
| | This is our '''return statement'''.
+
|This is our '''return statement'''.Now click on '''Save'''.
 
+
|-
+
| 04:59
+
| Now click on '''Save'''.
+
  
 
|-
 
|-
Line 346: Line 338:
 
|-
 
|-
 
| 05:24
 
| 05:24
|Press '''Enter'''.
+
|Press '''Enter'''.The output is displayed as:  
 
+
|-
+
|05:25
+
| The output is displayed as:  
+
  
 
|-
 
|-
Line 406: Line 394:
 
|-
 
|-
 
| 06:17
 
| 06:17
|Let us move back to our '''slide'''s.
+
|Let us move back to our '''slide'''s. Let us summarize.
 
+
|-
+
| 06:19
+
| Let us summarize.
+
  
 
|-
 
|-
Line 418: Line 402:
 
|-
 
|-
 
| 06:23
 
| 06:23
|* Encapsulation
+
| Encapsulation Data Abstraction
 
+
|-
+
| 06:24
+
|* Data Abstraction
+
  
 
|-
 
|-
 
| 06:25
 
| 06:25
|* '''Private''' members
+
|'''Private''' members
  
 
|-
 
|-
Line 434: Line 414:
 
|-
 
|-
 
| 06:29
 
| 06:29
|* '''Public''' functions
+
|'''Public''' functions''' int area(int);'''
 
+
|-
+
| 06:30
+
|''' int area(int);'''
+
  
 
|-
 
|-
 
| 06:32
 
| 06:32
|* '''classes'''
+
|'''classes''' '''class square'''
 
+
|-
+
| 06:33
+
|'''class square'''
+
  
 
|-
 
|-
 
| 06:35
 
| 06:35
|* To create object,  
+
|To create object,  
  
 
|-
 
|-
Line 458: Line 430:
 
|-
 
|-
 
| 06:39
 
| 06:39
|* To call a '''function''' using '''object sqr dot area();'''  
+
| To call a '''function''' using '''object sqr dot area();'''  
  
 
|-
 
|-
 
| 06:43
 
| 06:43
|  As an assignment:  
+
|  As an assignment: write a program to find the perimeter of a given circle.
 
+
|-
+
| 06:44
+
|write a program to find the perimeter of a given circle.
+
  
 
|-
 
|-
Line 482: Line 450:
 
|-
 
|-
 
| 07:00
 
| 07:00
| The Spoken Tutorial Project team:  
+
|The Spoken Tutorial Project team:  
  
 
|-
 
|-
Line 510: Line 478:
 
|-
 
|-
 
|07:31
 
|07:31
| This is Ashwini Patil from IIT Bombay, signing off
+
|This is Ashwini Patil from IIT Bombay, signing off. Thank You for joining.  
 
+
Thank You for joining.  
+
  
 
|}
 
|}

Latest revision as of 12:43, 23 March 2017

Time Narration
00:01 Welcome to the spoken tutorial on Classes and Objects in C++.
00:07 In this tutorial, we will learn:
00:09 Classes
00:11 Objects Encapsulation and
00:14 Data abstraction.
00:16 We will do this with the help of an example.
00:20 To record this tutorial, I am using:
00:23 Ubuntu OS version 11.10
00:28 g++ compiler version 4.6.1
00:32 Let us start with the introduction to classes.
00:36 Class is created using a keyword class.
00:39 It holds data and functions.
00:42 Class links the code and data.
00:45 The data and functions of the class are called as members of the class.
00:51 Let us move on to objects.
00:53 Objects are variables.
00:55 They are the copy of a class.
00:58 Each of them has properties and behavior.
01:01 Properties are defined through data elements and
01:06 behavior is defined through member functions called methods.
01:10 Now let us see the syntax for a class.
01:14 Here, class is a keyword used to define a class.
01:18 Class-name is the name of the class.
01:21 public, private and protected are the access specifier.
01:26 And here we have defined the data members and the member functions as public, private and protected.
01:34 This is how we close the class.
01:37 Now let us see an example.
01:39 I have already typed the code on the editor.
01:42 I will open it.
01:44 Note that our filename is class hyphen obj dot cpp
01:50 In this example, we will calculate the area of a square using class.
01:56 Let me explain the code now.
01:58 This is our header file as iostream.
02:02 Here we are using the std namespace.
02:06 This is declaration for a class named square.
02:10 Here, I have not declared any access specifier.
02:14 So, by default it is private.
02:17 Hence, variable x is a private member of class square.
02:22 This is the public specifier.
02:25 Function area is a public function.
02:28 And this is how we close the class.
02:31 Now let us move back to our slides to know more about the access specifiers.
02:36 Public specifier-
02:39 The public specifier allows the data to be accessed outside the class.
02:44 A public member can be used anywhere in the program.
02:49 Private specifier-
02:51 The members declared as private cannot be used or accessed outside the class.
02:57 private members can be used only by the members of the class.
03:03 Protected specifier-
03:05 protected members cannot be accessed from outside the class.
03:10 They can be accessed by a derived class.
03:13 Let us move back to our program.
03:16 Here, in this statement we have the class name,
03:21 the scope resolution operator and the function name.
03:25 We must use this operator.
03:27 It specifies that function area is not a global function.
03:33 It is a member function of class square.
03:36 Here, we have passed an argument as int a.
03:40 Now, let us switch back to our slides to know more about the scope resolution operator.
03:46 It is used to access the hidden data.
03:49 To access the variable or function with the same name, we use the scope resolution operator ::.
03:56 Suppose the local variable and the global variable have same name.
04:01 The local variable gets the priority.
04:05 We can access the global variable using ::(scope resolution operator.)
04:10 Now, switch to our program.
04:12 Here the value of a is stored in x.
04:17 Then we return the area of the square.
04:20 Here x is a private member.
04:22 To access the private parameter, we used the public member a.
04:27 private members are always hidden.
04:30 This is our main function.
04:33 Here, sqr is the object of class square.
04:37 This is how we create an object.
04:40 class-name followed by the object-name.
04:43 Here, we call the function area using the object sqr and a .(dot) operator.
04:50 Then we pass an argument as 4.
04:53 We set the value of x as 4.
04:57 This is our return statement.Now click on Save.
05:00 Let us execute the program.
05:03 Open the terminal window by pressing Ctrl, Alt and T keys simultaneously on your keyboard.
05:11 To compile, type: g++ space class hyphen obj dot cpp space hyphen o space class
05:20 Press Enter.
05:22 Type./class(dot slash class).
05:24 Press Enter.The output is displayed as:
05:28 Area of the square is 16
05:30 Now, let us move back to our program.
05:35 So far now we have seen,
05:37 the data and functions combined together in a class.
05:41 class is a single unit
05:44 in which the data and the function using them is grouped.
05:49 This mechanism is called as Encapsulation.
05:53 Then we have seen class with the private and public members.
05:59 The private data is hidden.
06:02 It cannot be accessed outside the class.
06:05 This mechanism is called as Data abstraction.
06:09 The interface is seen but the implementation is hidden.
06:14 This brings us to the end of this tutorial.
06:17 Let us move back to our slides. Let us summarize.
06:20 In this tutorial, we have learnt:
06:23 Encapsulation Data Abstraction
06:25 Private members
06:27 int x;
06:29 Public functions int area(int);
06:32 classes class square
06:35 To create object,
06:37 square sqr;
06:39 To call a function using object sqr dot area();
06:43 As an assignment: write a program to find the perimeter of a given circle.
06:49 Watch the video available at the link shown below.
06:52 It summarizes the Spoken Tutorial project.
06:55 If you do not have good bandwidth, you can download and watch it.
07:00 The Spoken Tutorial Project team:
07:02 Conducts workshops using spoken tutorials.
07:05 Gives certificates to those who pass an online test.
07:09 For more details, please write to: contact@spoken-tutorial.org
07:16 Spoken Tutorial Project is a part of the "Talk to a Teacher" project.
07:20 It is supported by the National Mission on Education through ICT, MHRD, Government of India.
07:26 More information on this mission is available at the link shown below.
07:31 This is Ashwini Patil from IIT Bombay, signing off. Thank You for joining.

Contributors and Content Editors

PoojaMoolya, Pratik kamble, Sandhya.np14