Difference between revisions of "Advanced-C++/C2/Polymorphism/English-timed"
From Script | Spoken-Tutorial
Line 13: | Line 13: | ||
|- | |- | ||
| 00:10 | | 00:10 | ||
− | | | + | |'''Polymorphism''' '''Virtual Function.''' |
|- | |- | ||
Line 21: | Line 21: | ||
|- | |- | ||
| 00:16 | | 00:16 | ||
− | | | + | |To record this tutorial, I am using: |
'''Ubuntu OS '''version '''11.10''' | '''Ubuntu OS '''version '''11.10''' | ||
'''g++ compiler '''version '''4.6.1''' | '''g++ compiler '''version '''4.6.1''' | ||
Line 114: | Line 114: | ||
|- | |- | ||
− | | | + | |02:00 |
− | | This is our '''virtual function area()'''. | + | |This is our '''virtual function area()'''. |
|- | |- | ||
Line 251: | Line 251: | ||
|- | |- | ||
|04:09 | |04:09 | ||
− | |To compile, type: | + | |To compile, type: '''g++ space virtual.cpp space -o space vir''' press '''Enter'''. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
Line 287: | Line 283: | ||
|- | |- | ||
| 04:39 | | 04:39 | ||
− | | | + | |'''Polymorphism''' |
|- | |- | ||
| 04:41 | | 04:41 | ||
− | | | + | |'''Virtual function''', example '''Virtual int area()'''. |
|- | |- | ||
Line 299: | Line 295: | ||
|- | |- | ||
| 04:50 | | 04:50 | ||
− | | | + | |Create perimeter as a '''Virtual function.''' |
|- | |- |
Latest revision as of 14:59, 23 March 2017
Time | Narration |
00:02 | Welcome to the spoken tutorial on Polymorphismin C++. |
00:07 | In this tutorial, we will learn: |
00:10 | Polymorphism 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 version 4.6.1 |
00:27 | Let us start with an 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 overridden 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 file name is virtual.cpp. |
01:15 | In this program,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 the 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 objectof 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 the 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: 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.In this tutorial, we learnt: |
04:39 | Polymorphism |
04:41 | Virtual function, example Virtual int area(). |
04:45 | As an assignment: 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. |