Difference between revisions of "Advanced-C++/C2/Polymorphism/English-timed"
From Script | Spoken-Tutorial
| Line 6: | Line 6: | ||
|- | |- | ||
| 00:02 | | 00:02 | ||
| − | | Welcome to the spoken tutorial on '''Polymorphism '''in''' C++'''. | + | | Welcome to the spoken tutorial on '''Polymorphism'''in '''C++'''. |
|- | |- | ||
| Line 26: | Line 26: | ||
|- | |- | ||
| 00:16 | | 00:16 | ||
| − | | To record this tutorial, I am using '''Ubuntu OS '''version 11.10 '''g++ compiler '''v. 4.6.1 | + | | To record this tutorial, I am using '''Ubuntu OS '''version 11.10 '''g++ compiler '''v. 4.6.1''' |
|- | |- | ||
| Line 114: | Line 114: | ||
|- | |- | ||
| 01:50 | | 01:50 | ||
| − | | Here we have passed two '''arguments '''as''' a '''and''' b.''' | + | | Here we have passed two '''arguments''' as '''a ''' and''' b.''' |
|- | |- | ||
| Line 130: | Line 130: | ||
|- | |- | ||
| 02:07 | | 02:07 | ||
| − | | Then we have class '''Rectangle''' as '''derived class.''' | + | | Then we have class '''Rectangle''' as a '''derived class.''' |
|- | |- | ||
| Line 154: | Line 154: | ||
|- | |- | ||
| 02:29 | | 02:29 | ||
| − | | This also inherits properties of the base class parallelogram. | + | | This also inherits the properties of the base class parallelogram. |
|- | |- | ||
| Line 186: | Line 186: | ||
|- | |- | ||
| 03:00 | | 03:00 | ||
| − | | This is called as''' Base pointer.''' | + | | This is called as '''Base pointer.''' |
|- | |- | ||
| Line 226: | Line 226: | ||
|- | |- | ||
| 03:40 | | 03:40 | ||
| − | | '''And at last we assign Parallel | + | | '''And at last we assign Parallel to the address of Triangle ''' |
|- | |- | ||
| Line 246: | Line 246: | ||
|- | |- | ||
| 03:56 | | 03:56 | ||
| − | | And This is our | + | | And This is our return statement |
|- | |- | ||
| Line 254: | Line 254: | ||
|- | |- | ||
| 04:02 | | 04:02 | ||
| − | | | + | | Open the terminal window by pressing '''Ctrl, Alt and T '''keys simultaneously on your keyboard. |
|- | |- | ||
| Line 302: | Line 302: | ||
|- | |- | ||
| 04:41 | | 04:41 | ||
| − | | Virtual function example Virtualint area | + | | Virtual function example '''Virtualint''' area |
|- | |- | ||
Revision as of 13:06, 14 October 2014
| Time | Narration |
| 00:02 | Welcome to the spoken tutorial on Polymorphismin C++. |
| 00:07 | In this tutorial we will learn, |
| 00:10 | Polymorphism. |
| 00:11 | Virtual Function. |
| 00:13 | We will do this through an example. |
| 00:16 | To record this tutorial, I am using Ubuntu OS version 11.10 g++ compiler v. 4.6.1 |
| 00:27 | Let us start with the introduction to polymorphism. |
| 00:31 | Polymorphism is the ability to take different forms. |
| 00:36 | It is the mechanism to use a function with same name in different ways. |
| 00:42 | Let us see virtual functions. |
| 00:45 | Virtual function is the member function of a class. |
| 00:49 | It can be overriden in its derived class. |
| 00:53 | It is declared with virtual keyword. |
| 00:57 | Virtual function call is resolved at run-time. |
| 01:01 | Now let us see an example on virtual functions. |
| 01:06 | I have already written the code. |
| 01:08 | Let us go through it. |
| 01:10 | Note that our filename is virtual.cpp |
| 01:15 | In this program: |
| 01:16 | We will calculate the area of a rectangle, parallelogram and triangle. |
| 01:22 | This is our header file as iostream. |
| 01:25 | Here we are using std namespace. |
| 01:29 | Then we have a class parallelogram |
| 01:33 | This is the base class. |
| 01:35 | In this we have declared integer variables as width,height and ar. |
| 01:42 | These are declared protected. |
| 01:45 | Then we have function set_values declared as public. |
| 01:50 | Here we have passed two arguments as a and b. |
| 01:55 | Then we access the protected members using the public members. |
| 02:00 | This is our virtual function area. |
| 02:04 | Here we calculate the area of parallelogram. |
| 02:07 | Then we have class Rectangle as a derived class. |
| 02:12 | It inherits the properties of base class parallelogram. |
| 02:17 | Here we override the function area. |
| 02:21 | Then we calculate the area of the rectangle. |
| 02:23 | And print the value. |
| 02:25 | Here we have another derived class as triangle. |
| 02:29 | This also inherits the properties of the base class parallelogram. |
| 02:35 | Here again we override the function area. |
| 02:39 | Then we calculate the area of the triangle. |
| 02:41 | And print the value. |
| 02:43 | This is our main function. |
| 02:46 | Here we create an object of class parallelogram as p. |
| 02:52 | We can see here pointer parallel. |
| 02:56 | This is the pointer of class parallelogram. |
| 03:00 | This is called as Base pointer. |
| 03:03 | Pointer of base class can point to the object of the derived class. |
| 03:08 | Here we create objects of class Rectangle and Triangle. |
| 03:14 | Here, Parallel is assigned to the address of p. |
| 03:18 | Then we pass arguments as 3 and 2. |
| 03:23 | Then we call function area. |
| 03:26 | Here, Parallel is assigned to the address of rect |
| 03:30 | rect is the object of class Rectangle. |
| 03:33 | Again we pass arguments as 4 and 5. |
| 03:37 | And we call the function area. |
| 03:40 | And at last we assign Parallel to the address of Triangle |
| 03:45 | trgl. |
| 03:47 | This is the object of class Triangle. |
| 03:51 | Here we pass arguments as 6 and 5. |
| 03:54 | And call function area. |
| 03:56 | And This is our return statement |
| 03:59 | Now let us execute the program |
| 04:02 | Open the terminal window by pressing Ctrl, Alt and T keys simultaneously on your keyboard. |
| 04:09 | To compile type: |
| 04:10 | g++ space virtual.cpp space -o space vir Press Enter |
| 04:20 | Type: ./vir Press Enter |
| 04:24 | You can see that, The output is displayed as: |
| 04:27 | Area of parallelogram is 6 |
| 04:29 | Area of rectangle is 20 |
| 04:31 | and Area of triangle is 15 |
| 04:34 | Come back to our slides. |
| 04:36 | Let us summarize. |
| 04:37 | In this tutorial, we learnt |
| 04:39 | Polymorphism. |
| 04:41 | Virtual function example Virtualint area |
| 04:45 | As an assignment |
| 04:46 | Calculate the perimeter of rectangle, square and triangle. |
| 04:50 | Create perimeter as a Virtual function. |
| 04:54 | Watch the video available at the link shown below |
| 04:57 | It summarizes the Spoken Tutorial project |
| 05:00 | If you do not have good bandwidth, you can download and watch it |
| 05:04 | The Spoken Tutorial Project Team |
| 05:06 | Conducts workshops using spoken tutorials |
| 05:09 | Gives certificates to those who pass an Online test |
| 05:14 | For more details, please write to, contact@spoken-tutorial.org |
| 05:21 | Spoken Tutorial Project is a part of the Talk to a Teacher project |
| 05:25 | It is supported by the National Mission on Education through ICT, MHRD, Government of India |
| 05:32 | More information on this Mission is available at link shown below : http://spoken-tutorial.org\NMEICT-Intro |
| 05:37 | This is Ashwini Patil from IIT Bombay signing off
Thank You for joining. |