1 00:00:00,120 --> 00:00:03,560 Now, let's start our discussion on C++. 2 00:00:03,580 --> 00:00:10,080 So our major importance of this course is dealing with the C++ programming. 3 00:00:10,170 --> 00:00:13,140 So this is the basic history of C++. 4 00:00:13,170 --> 00:00:19,650 It was actually introduced in 1985 by a talented computer scientist called John Star-Struck. 5 00:00:19,670 --> 00:00:21,240 We cannot be silent. 6 00:00:21,360 --> 00:00:23,760 So it's John started in 1980. 7 00:00:24,000 --> 00:00:28,250 So it is the successor of that C programming language. 8 00:00:28,260 --> 00:00:36,210 So C++ is also called C with classes, and this language was majorly updated three times. 9 00:00:36,330 --> 00:00:41,370 And it's still being used in programming, so that's the peculiarity of C++. 10 00:00:41,640 --> 00:00:52,170 So it was updated three times in 2011, 2014 and 2017 to different standards for C++, 11, C++ 14 and 11 00:00:52,170 --> 00:00:53,670 C++ 17. 12 00:00:53,700 --> 00:00:55,490 So no, let's see. 13 00:00:55,530 --> 00:01:01,050 These are the basic components of C++, so whenever we recreate a C++ program. 14 00:01:01,380 --> 00:01:05,310 It will be always dependent on all these concepts. 15 00:01:05,460 --> 00:01:12,960 So these are the basic concepts of C++ programming objects, classes, data, abstraction and encapsulation, 16 00:01:12,960 --> 00:01:15,380 inheritance and polymorphism. 17 00:01:15,390 --> 00:01:20,880 Then we have two additional points dynamic binding and message bus. 18 00:01:21,120 --> 00:01:26,100 So let's see these each of these components indeed. 19 00:01:26,220 --> 00:01:27,830 So what is object? 20 00:01:27,840 --> 00:01:29,840 So consider the going. 21 00:01:30,070 --> 00:01:31,410 It can be two wheeler maker. 22 00:01:31,620 --> 00:01:35,130 It can be dreaming of A. Any number of bills are possible, right? 23 00:01:35,220 --> 00:01:39,560 So in that case, each of these vehicles can be treated as an object. 24 00:01:39,570 --> 00:01:41,820 And what is a peculiarity of these vehicles? 25 00:01:42,090 --> 00:01:45,390 So suppose I am talking about bicycle assembly. 26 00:01:45,570 --> 00:01:47,220 What are the features of basic? 27 00:01:47,280 --> 00:01:48,950 It has to be right. 28 00:01:49,230 --> 00:01:53,490 It has a bell and it can also what are the functions it can perform? 29 00:01:53,610 --> 00:01:58,050 It can write if somebody cycling on it, it can run on the road. 30 00:01:58,620 --> 00:02:01,010 So bicycle can be treated as an object. 31 00:02:01,020 --> 00:02:06,050 So this is a kind of an entity which our program like timezone support. 32 00:02:06,090 --> 00:02:15,900 Suppose if we want like place a bus and a bank on a table of data or any aid program can handle that 33 00:02:16,410 --> 00:02:18,930 individual and it is called object. 34 00:02:19,050 --> 00:02:19,440 No. 35 00:02:19,560 --> 00:02:27,120 Why this glass in case of glass that it is a more generalized concepts of objects like bicycle is an 36 00:02:27,120 --> 00:02:27,570 object. 37 00:02:27,700 --> 00:02:31,410 Likewise, another vehicle is car weight that is also an object. 38 00:02:31,410 --> 00:02:33,600 So all these objects came. 39 00:02:33,600 --> 00:02:35,590 So another category of vehicle, right? 40 00:02:35,610 --> 00:02:39,980 It's all in vehicles, and these vehicle can be termed asset class. 41 00:02:39,990 --> 00:02:46,620 So the E-Class will be having different objects and it will be having different characteristics, which 42 00:02:46,620 --> 00:02:49,470 will be common to all these objects. 43 00:02:49,500 --> 00:02:53,770 So glasses, suppose we have the vehicle glass like we discussed, right? 44 00:02:53,970 --> 00:02:57,410 So basically, say Glass, what are the characteristics of the vehicle? 45 00:02:57,420 --> 00:02:59,550 You can meet this speed. 46 00:02:59,640 --> 00:03:00,000 Right? 47 00:03:00,120 --> 00:03:05,580 All these are the characteristics of that vehicles, and these characteristics are common to all of 48 00:03:05,580 --> 00:03:07,560 the objects in that particular class. 49 00:03:07,620 --> 00:03:11,250 Now let's talk about data, abstraction and encapsulation. 50 00:03:11,490 --> 00:03:15,610 These are the most important concepts in C++ programming. 51 00:03:15,630 --> 00:03:17,730 So what is meant by data abstraction? 52 00:03:17,730 --> 00:03:24,270 Suppose, in other forms of programming, we will be creating a program and the data and the functions 53 00:03:24,270 --> 00:03:24,960 are separate. 54 00:03:24,990 --> 00:03:27,270 We will be declaring or defining data somewhere. 55 00:03:27,480 --> 00:03:31,230 We will be writing functions associated with the data somewhere else. 56 00:03:31,290 --> 00:03:38,120 But in the case of C++, we will be buying these data and functions together with the help of objects. 57 00:03:38,190 --> 00:03:46,050 So like we have said, these and Anabelle are the characteristics or the data elements, and violation 58 00:03:46,050 --> 00:03:49,660 or run is the functionality that bicycle can run. 59 00:03:49,680 --> 00:03:50,600 It can travel. 60 00:03:50,610 --> 00:03:53,510 So that's the functionality of that bicycle. 61 00:03:53,530 --> 00:04:00,690 So all these data points and functionalities treated as a single entity so that despite data abstraction, 62 00:04:00,700 --> 00:04:06,540 so maybe you will have having a lot of questions at this point of time because you don't have any prior 63 00:04:06,540 --> 00:04:09,060 knowledge in this object orientation. 64 00:04:09,450 --> 00:04:17,850 Once we had our programs and start creating our programs, then we will have more idea about the abstraction 65 00:04:17,850 --> 00:04:21,280 and encapsulation of all of these components of C++. 66 00:04:21,330 --> 00:04:30,120 Then another point of C++ is encapsulation, so it means we can bind the data and functions into a single 67 00:04:30,120 --> 00:04:31,980 unit that is called encapsulation. 68 00:04:31,990 --> 00:04:34,830 So what is a peculiarity is more secure. 69 00:04:34,920 --> 00:04:40,170 Data is not out accessible to that members who are not part of that class. 70 00:04:40,290 --> 00:04:41,900 Then we have inheritance. 71 00:04:41,910 --> 00:04:44,930 So in this case, we can consider an example. 72 00:04:44,940 --> 00:04:48,970 So inheritance help to make the components we them. 73 00:04:49,050 --> 00:04:51,300 So let me clear the screen at once. 74 00:04:54,040 --> 00:04:58,270 So, you know, we are talking about anything, and so see what what really happened. 75 00:04:58,630 --> 00:05:00,580 Like, what is the concept of inheritance? 76 00:05:00,710 --> 00:05:07,620 Suppose we are talking about books so books can be classified into flying books and not flying birds, 77 00:05:07,630 --> 00:05:07,900 right? 78 00:05:07,930 --> 00:05:14,290 Some birds can fly, but some cannot fly, and these birds have their characteristics different attributes 79 00:05:14,290 --> 00:05:18,220 depending on them, so that they would send me some of them eggs. 80 00:05:20,390 --> 00:05:22,160 Some of them fly. 81 00:05:24,180 --> 00:05:26,520 Some of them have feathers. 82 00:05:28,540 --> 00:05:34,510 All these other attributes starting into the boats now in case of flying birds, it ought to have the 83 00:05:34,630 --> 00:05:36,810 same attributes like these birds, right? 84 00:05:36,820 --> 00:05:38,440 But not everything so. 85 00:05:38,470 --> 00:05:39,820 Flying bird scan legs. 86 00:05:39,820 --> 00:05:45,660 So this can be a property of the birds, which can be inherited to flying birds, and it gives off known 87 00:05:45,670 --> 00:05:46,360 flying much. 88 00:05:46,540 --> 00:05:53,650 Also, the same property can be inheritance, so inheritance stands for getting the features or properties 89 00:05:53,650 --> 00:05:56,500 of one object from one class to another class. 90 00:05:56,530 --> 00:06:02,830 So if we classify birds as separate and class, then flying birds can have the most of the properties 91 00:06:02,830 --> 00:06:07,960 of birds and north flying birds can also have most of the properties of the birds. 92 00:06:08,230 --> 00:06:15,760 We don't need to create like separate properties or separate attributes when we have a provision to 93 00:06:15,760 --> 00:06:18,430 copy the existing activity itself that floats. 94 00:06:18,520 --> 00:06:25,600 So inheritance means inheriting the properties from that battle glass tree sap plus and this can mean 95 00:06:25,600 --> 00:06:27,190 multiple levels of inheritance. 96 00:06:27,190 --> 00:06:31,990 So we will be discussing inheritance in a separate chapter, so no need to worry on that. 97 00:06:32,020 --> 00:06:34,900 Now let's discuss about polymorphism. 98 00:06:34,920 --> 00:06:40,450 Polymorphism in the sense only means many and more efficient means forms. 99 00:06:40,570 --> 00:06:47,650 So why does the real meaning of polymorphism that is the same thing can be done in different ways? 100 00:06:47,680 --> 00:06:48,010 OK. 101 00:06:48,160 --> 00:06:54,160 So, for example, consider the operation of ED. If we are adding to the list, then we will get the 102 00:06:54,160 --> 00:06:56,110 sum of those two numbers right? 103 00:06:56,440 --> 00:07:02,900 So the same ad operator plus can be given another meaning if we want to add two strings. 104 00:07:02,920 --> 00:07:09,580 Suppose I add a string hello and have a string hi, and I want to combine those things and see that 105 00:07:09,580 --> 00:07:12,250 operation is also represented by plus sign. 106 00:07:12,250 --> 00:07:16,270 Then that is that another meaning of that additional greater plus. 107 00:07:16,270 --> 00:07:21,640 So processing the data in different forms that our objects in different forms. 108 00:07:21,880 --> 00:07:26,540 Akroyd polymorphism and we will be discussing this also in a separate section. 109 00:07:26,560 --> 00:07:28,780 So you need not to worry about that. 110 00:07:28,850 --> 00:07:35,190 Now we can go to that dynamic binding or inception message passing one section off C++. 111 00:07:35,230 --> 00:07:37,300 So it is of dynamic binding. 112 00:07:37,300 --> 00:07:44,500 Each and everything in C++ can be given at that time or so compared to other programming languages. 113 00:07:44,680 --> 00:07:52,210 Whether we will be able to beam data prior to the runtime, C++ have a provision to give the data at 114 00:07:52,210 --> 00:07:54,730 the time of writing by. 115 00:07:55,750 --> 00:08:04,060 So that discard dynamic binding message passing stands for passing that information between different 116 00:08:04,060 --> 00:08:06,070 objects in that C++. 117 00:08:07,150 --> 00:08:10,420 So these are the basic components of C++. 118 00:08:10,960 --> 00:08:16,720 So moving forward in discourse on different units, we may be having these. 119 00:08:18,390 --> 00:08:23,220 Things covered in the tape, so if you have some conclusions, please don't worry about that. 120 00:08:23,400 --> 00:08:30,480 We will be carrying a like each and every component of C++ in bet on each of our more news.