Relationship between Virtual Functions, Pure Virtual Functions and Abstract Classes in OOP explained

Поділитися
Вставка
  • Опубліковано 23 лип 2024
  • 📚 Learn how to solve problems and build projects with these Free E-Books ⬇️
    C++ Lambdas e-book - free download here: bit.ly/freeCppE-Book
    Entire Object-Pascal step-by-step guide - free download here: bit.ly/FreeObjectPascalEbook
    🚀📈💻🔥 My Practical Programming Course: www.codebeautyacademy.com/
    Experience the power of practical learning, gain career-ready skills, and start building real applications!
    This is a step-by-step course designed to take you from beginner to expert in no time!
    💰 Here is a coupon to save 10% on your first payment (CODEBEAUTY_YT10).
    Use it quickly, because it will be available for a limited time.
    Download Visual Assist here: bit.ly/WT-CB
    I use it to enhance the performance, features, and support for C, C#, and C++ development in Visual Studio.
    Download Ultra Edit here: bit.ly/UE-CB
    It is a powerful, secure text editor designed specifically for programmers.
    In this Object-Oriented Programming course, I'm explaining the relationship and purpose of virtual functions, pure virtual functions, and abstract classes.
    C++ Virtual functions are functions defined in the base class and redefined in the derived class, whose main purpose is achieving runtime-polymorphism. Virtual functions are defined with the "virtual" keyword in the base class. You can find a detailed explanation and an example in this video, and I'll also show you how the runtime polymorphism achieved by using virtual functions looks like.
    Pure virtual functions in C++ (abstract function) in C++ is a virtual function for which we don't write implementation in the base class, but we only declare it. In order to declare a pure virtual function, you need to assign 0 in the declaration
    Abstract class in C++ is a class that has at least one pure virtual function. The classes which inherit the abstract class must provide a definition for the pure virtual functions, otherwise, they would be abstract themselves and you wouldn't be able to instantiate them.
    The main purpose of an abstract class is to provide an appropriate base class from which other classes can inherit.
    🎁 Create Modern Apps, 5x faster, with less code, Download FREE C++Builder Trial: bit.ly/CppBuilderFree
    ☕ If you've found my content helpful and would like to support me, you now have the option to buy me a coffee or a cookie! It's a small gesture of gratitude that means a lot to me and helps me keep creating free educational videos for you. Use the link to make a contribution: bit.ly/CodeBeauty_BuyMeACoffee
    However, please don't feel obligated to do so. I appreciate every one of you, and I will continue to share valuable content with you regardless of whether you choose to support me in this way. Thank you for being part of the Code Beauty community! ❤️😇
    Contents:
    00:00 - Into
    01:21 - Virtual Functions
    12:21 - Pure Virtual Functions and Abstract Classes
    17:28 - Polymorphism example
    🎹 Fun fact, on my language accordion is called "Harmonika" like the word harmony.
    Accordion compositions I like: bit.ly/compositionsILike
    My favorite composition (The Danube Waves): bit.ly/TheDanubeWaves
    Tag me on you Instagram stories:
    Instagram 📸 - / truecodebeauty
    Twitter 🐦- / truecodebeauty
  • Наука та технологія

КОМЕНТАРІ • 444

  • @CodeBeauty
    @CodeBeauty  2 роки тому +25

    📚 Learn how to solve problems and build projects with these Free E-Books ⬇️
    C++ Lambdas e-book - free download here: bit.ly/freeCppE-Book
    Entire Object-Pascal step-by-step guide - free download here: bit.ly/FreeObjectPascalEbook
    🚀📈💻🔥 My Practical Programming Course: www.codebeautyacademy.com/
    Experience the power of practical learning, gain career-ready skills, and start building real applications!
    This is a step-by-step course designed to take you from beginner to expert in no time!
    💰 Here is a coupon to save 10% on your first payment (CODEBEAUTY_YT10).
    Use it quickly, because it will be available for a limited time.

    • @Shad0wBenny
      @Shad0wBenny 2 роки тому

      I would love to but your page only accepts PayPal. Please consider updating to other payment options.

    • @battosaijenkins946
      @battosaijenkins946 2 роки тому +2

      @CodeBeauty, wow you code everyday like this?! Ur kinda cute!! 😋

    • @mba2ceo
      @mba2ceo 2 роки тому +1

      Plz Provide link for CODE in Description

    • @juliuscesar4176
      @juliuscesar4176 Рік тому

      You have explained to me what the book didn't explain. You have helped me create and compile my midterm project. Thank you very much! I wish you the best of success in all your endeavors.😀👍

    • @Blinkxys
      @Blinkxys 8 місяців тому

      YOu have an amazing voice, i want to marry you

  • @MarianSyFy
    @MarianSyFy 3 роки тому +223

    None of my University teachers were able to made programming look so easy like you do. Good job on being such a great teacher!

  • @adithyasankar4522
    @adithyasankar4522 2 роки тому +84

    The fact that you decided to keep the nostalgia you got apart of this video shows how much effort you put into these thank you so much for these videos

  • @uwelab6590
    @uwelab6590 6 місяців тому +6

    Finally someone who explains things as simple as they are and does not complicate them. Thanks

  • @Boba0514
    @Boba0514 3 роки тому +31

    Thank you so much for this video, I just got my first tech job as a C++ developer, and the only C++ questions during the interview were about virtual functions, so you helped me get the job!

  • @Lordcarlox
    @Lordcarlox 3 роки тому +22

    I'm always amazed how this OOP videos can summarize 1 week of formal programming courses.
    They are rudimentary, but an ideal start.

  • @notappi3982
    @notappi3982 3 роки тому +114

    Leterally u can beat any professor in teaching skills.

  • @nothingiseverperfect
    @nothingiseverperfect 2 роки тому +6

    Oh girl you are blowing my professors and teachers out of the WATER 😭😭😭😭 bless your soul queen 🙌🙌😭😭 I hope you make it to heaven

    • @CodeBeauty
      @CodeBeauty  2 роки тому +4

      Thanks so much ☺️🥰🥰

  • @hamzah7025
    @hamzah7025 2 роки тому +7

    YOU ARE AN AMAZING TEACHER. I dont need to check for someone else's tutorial. I am always sure that your tutorial is all I need to understand OOP.

  • @michaelisnardi6380
    @michaelisnardi6380 2 роки тому +10

    Thank you for teaching the world C++ in logical, bite-size chunks! I am a longtime C programmer and am just getting up to speed on C++. Your course is helping me do that with minimum effort. I was prompted to leave a comment because I too played the accordion when I was young and I too miss playing it!

  • @-_-5070
    @-_-5070 2 роки тому +5

    I just loved how clear and confident you are while teaching, pleased that I've found your channel♥️😊

  • @sahibpreetsingh8695
    @sahibpreetsingh8695 3 роки тому +3

    This teacher has a great art of simplifying things such that even a new student is able to take out the core meaning from her session. Good Job teacher

  • @hazaonly
    @hazaonly 2 роки тому +9

    Thank you Sensei! You taught me passion, patience, precision, peace and Abstract Classes. 🙏 🙇

  • @anmolnuri10
    @anmolnuri10 2 роки тому +2

    I was so daunted by what this topic had in stored but you made it really simple to comprend. I appreciate you and your value to the coding community. Thank you !!!

  • @adhel-estebanriverarodrigu2234
    @adhel-estebanriverarodrigu2234 2 роки тому +2

    And here I was studying and now I just got sidetracked by the accordions... I don't regret it. Thanks for your invaluable help in the videos! You truly have a deep knowledge and talent in teaching programming! Keep up the great work!

  • @chanakasworkspace2528
    @chanakasworkspace2528 Рік тому

    Thanks a lot for this! I watched this video about an hour before my exam and it helped me do what I was supposed to do. Everything's clear and concise. You're a brilliant teacher!

  • @nikolaystoychev7170
    @nikolaystoychev7170 2 роки тому +1

    The most unique video I've ever seen. It is incredibly well explained and completely comprehensive. Well done!

  • @dianelysrocha7156
    @dianelysrocha7156 2 роки тому +2

    This is so interesting. Thank you for the time you invest on your videos. I come from Java, and I find myself fighting my brain on syntax a lot. Thanks to you that process has become way easier.

  • @sketchyboi1491
    @sketchyboi1491 Рік тому

    I must say, I'm so glad I found this video. I was having a really hard time understanding the concept of virtual functions for months. This demotivated me and caused me to take a long break from learning C++. However, after watching YOUR explanation of it, I actually understand the concept now and the purpose of using it. I've had more confidence in learning the language since then. Thanks!

  • @hidemat5141
    @hidemat5141 2 роки тому +2

    Saldina, thanks for your videos. I've been trying to learn c++ for so long, but always get deterred and bored. You present c++ in a consumable format. So I'm finally learning it. :)

  • @MatheusA-xo6vc
    @MatheusA-xo6vc 3 роки тому +17

    Grateful for your work! 👏🏻👏🏻👏🏻

    • @CodeBeauty
      @CodeBeauty  3 роки тому +3

      Much appreciated! 🙏💙

  • @michaellundgren6949
    @michaellundgren6949 3 роки тому +5

    I watched many c++ tutorials and this was the first video I watched that I allowed me to understood this concept! Thanks!

    • @CodeBeauty
      @CodeBeauty  3 роки тому +1

      That is great to hear 🤗😃😃

  • @moneynamazi5893
    @moneynamazi5893 2 роки тому

    Watched so many tutorials about virtual functions. None of them was this good. Awesome example for virtual functions

  • @ritika2563
    @ritika2563 3 роки тому

    Love Ur work. Explanations are never complex , but build from the basic up to total completeness.

  • @roros2512
    @roros2512 3 роки тому +4

    the notation used in 06:44 Instrument* i1 = new Accordion( ); it is also used in linked list as Node* newNode = new Node( );
    but I do not understand why this is done in this way, any help? thanks!
    thanks teacher Saldina!

  • @niteshkoli007
    @niteshkoli007 Рік тому +2

    your way of teaching also like pure virtual function forces me to understand the topic easily.😁thank you so much.

  • @shibashabatnotski5163
    @shibashabatnotski5163 2 роки тому +1

    Thank you so much for such good quality video's! i am currently studying for an exam to the army and your vids present the needed knowledge very well!

  • @ashah123123
    @ashah123123 3 роки тому +2

    Welcome back after a long break. You are amazing teacher.

  • @veronicas3668
    @veronicas3668 2 роки тому +1

    Thanks! Your channel is so helpful!!

  • @moularaoul643
    @moularaoul643 3 роки тому

    Your way of teaching is very educational!!! Thank you for this chapter.

  • @midastouchh
    @midastouchh 3 роки тому

    The way you teach c++ makes it more simple... Nice work ma'am.

  • @salihbarknakkaya8101
    @salihbarknakkaya8101 3 місяці тому +1

    It is so nice to see the real BEAUTY OF CODE! Thank you so much for sharing these beneficial informations with us, you literally 100 times better than my profs.

  • @maytezhou2585
    @maytezhou2585 3 роки тому

    First time I see you getting so emotional.
    Sometimes I get emotional like that. And tears just come up from my eyes without noticing.
    Thank you for the video. You explained it so well. I am learning this on my c++ course at university and this is really helpful!

  • @cengizhankahraman4326
    @cengizhankahraman4326 Рік тому +1

    As an electonics engineering student, I love u r tutorials. Thanks for your nice explanation. greetings from Turkey :)

  • @edwardoliveira1748
    @edwardoliveira1748 Рік тому +1

    This helped me alot to understand these. Thank you.

  • @harshchandwani9781
    @harshchandwani9781 Рік тому

    Thanks for making such a clear explanation to the virtual and pure virtual function

  • @nazmulhaquenahin
    @nazmulhaquenahin 2 роки тому +1

    I am just fallen in love the way you teach and your explanation

  • @mustafaaltay4920
    @mustafaaltay4920 Рік тому

    Clear, informative and gorgeous videos. Many thanks for amazing C++ tutorials dear Saldina, greetings from Turkey 👍

  • @_nabin_8848
    @_nabin_8848 10 місяців тому

    wow this video clear out all of my confusion related to the virtual function.
    thanks a lot for that.

  • @OmgThisssguy
    @OmgThisssguy 2 роки тому

    Phenomenal teaching, thank you for explaining it so clear!

  • @laurino.
    @laurino. 3 роки тому +2

    I'm learning C and C++ in school and i always learn something there and you upload a video about it!! Is amazing, With this videos i understand everything perfectly and learn new things you add :D

  • @khandakerrakibulhasan
    @khandakerrakibulhasan 2 роки тому +1

    I really like your teaching style. Your explanation was awesome .
    🥰

  • @shaboobis9283
    @shaboobis9283 2 роки тому

    Excellent lesson. Your teaching is concise and refreshing.

  • @1tav0
    @1tav0 8 місяців тому +1

    Your channel is a goldmine of knowledge thank you so much

  • @ikasugami
    @ikasugami 3 роки тому +1

    Ya, I used to play Bassoon in school for a while, and I get nostalgic for that from time to time like when I hear some music with a prominent bassoon part.... Thank you for sharing about playing the accordion!

  • @user-yy9zs7ff6r
    @user-yy9zs7ff6r 7 місяців тому

    Thank you saldina your videos are helping me a lot in my university works.☺

  • @Hamza-dw4iw
    @Hamza-dw4iw Рік тому

    This channel should have a million subs

  • @mphafineo326
    @mphafineo326 Рік тому +1

    ❤Cpp getting wayyy better!!!!!

  • @elizabethc.9215
    @elizabethc.9215 2 роки тому

    Thank you for sharing the accordion story!

  • @riddhithbanerjee
    @riddhithbanerjee 4 місяці тому +1

    Thanks Saldina...It was a great video ❤❤

  • @programtin
    @programtin Рік тому

    the best video i have ever seen about oop 🤞

  • @jasphercadelina4577
    @jasphercadelina4577 3 роки тому

    You are currently the best c++ teacher on UA-cam University

  • @easylearning1207
    @easylearning1207 3 роки тому +2

    Finally 😍I was waiting for oop tutorials

  • @mittom7628
    @mittom7628 2 роки тому +1

    Svaka čast, prepametna i prelepa Mostarko

  • @fernandoalbuquerque6645
    @fernandoalbuquerque6645 3 роки тому

    Amazing explanation. It's a tough subject for understanding but....you saved my night.

  • @hbm293
    @hbm293 3 роки тому +2

    The accordion choices are great! The hungarian čardaš remembered me about a passage of Brahms' Hungarian dance n°4

  • @bigpanda9928
    @bigpanda9928 2 роки тому +1

    I'm new to classes and objects and your videos are very like very helpful

  • @moaz_king_1001
    @moaz_king_1001 7 місяців тому +1

    thx very much this video really helped me alot .. your videos are really easy to understand and very helpful

  • @korsaretention8846
    @korsaretention8846 Рік тому

    you are my favorite teacher in C++ i like ur explanation keep going :)

  • @cmod8099
    @cmod8099 Рік тому +1

    Like the Fleetwood Mac song goes .... You make learning Fun!
    Many Thanks.

  • @alikhatami6610
    @alikhatami6610 3 роки тому

    love your videos . they are pretty specific . thank you

  • @majdijaiel6668
    @majdijaiel6668 3 роки тому

    Awesome video ! much appreciated

  • @s1mplelance964
    @s1mplelance964 2 роки тому

    Thank u so much for this great explanation!

  • @jiahuili2133
    @jiahuili2133 2 роки тому

    Very good examples to explain the concept.

  • @AnandKumar-dc2bf
    @AnandKumar-dc2bf Рік тому +1

    Such a clear explanation, and u have a very nice smile. god bless U....

  • @cbc2977
    @cbc2977 2 роки тому

    Great Video. This was very helpful

  • @unpersonownlife
    @unpersonownlife 3 роки тому +15

    The pacing in this video is great! Will you consider doing more in-depth videos about C/C++ internals?

    • @CodeBeauty
      @CodeBeauty  3 роки тому +11

      Yes, absolutely! Thank you! Glad you enjoyed it! 🤗

  • @mahmoudmostafa9028
    @mahmoudmostafa9028 3 роки тому +5

    With your style, you make learning easier

  • @jasnarmstrng
    @jasnarmstrng Рік тому +1

    The accordion nostalgia bit was a nice touch.
    Looking forward to creating a concert in C++. Instrument class example 👍

  • @felipevalles3831
    @felipevalles3831 3 роки тому +1

    Nunca había aprendido tantas cosas en tan poco tiempo eres una excelente maestra 😉. Saludos desde Lerdo, Durango. Mx.

  • @alejandromackay3074
    @alejandromackay3074 2 роки тому

    Thanks!!! Excellent explanation

  • @Sneaky1ne
    @Sneaky1ne 2 роки тому +1

    incredible playlist

  • @Montahista
    @Montahista 2 роки тому +1

    hey, I'm coming from code camp, your lessons it's amazing , I'm Montaha from Libya (north Africa)

  • @krishnakadadi5394
    @krishnakadadi5394 2 роки тому

    You made this easy to understand .Thank you :)

  • @vinayakdhavali1337
    @vinayakdhavali1337 3 роки тому

    You made it so simple. Thank you 😊

  • @giuliadodaro826
    @giuliadodaro826 2 роки тому

    You explained very well. Despite the explanation was in English I understood everything and you cleared up any doubts I had. Thank you.

  • @musaddiklalkot3514
    @musaddiklalkot3514 2 роки тому

    Appreciated the work and teaching skills from India....

  • @naveedullah5314
    @naveedullah5314 2 роки тому

    its very helpful ... explained in one of the best way.....

  • @md.saifulislam6528
    @md.saifulislam6528 2 роки тому +1

    Most convinent one....thanks for making this video.

  • @Jabrownie23
    @Jabrownie23 2 роки тому +1

    Thanks for sharing the accordion link with the Just Duet channel. It was very amusing to hear the "Super Mario Bros" and "Still Dre" songs. I chuckled a bit seeing how straight their faces looked as they played.
    I hope you'll continue with your passion in playing the accordion, it sounds like a wonderful instrument meant for a wonderful person.

  • @francescofaccodelagarda5408
    @francescofaccodelagarda5408 3 роки тому

    thank you again.. so clear and well explained..
    .. btw, I'd LOve to see you playing the accordion!

  • @caraqingge7845
    @caraqingge7845 2 роки тому

    Thank you so much for your video!

  • @riachii3333
    @riachii3333 Рік тому +1

    what, i was scared of oop because of what they all talk about. i think you make it very easy and understandable. thank you so much! also i really like the shirts you wear

  • @imSky69
    @imSky69 9 місяців тому

    the nostalgic accordian part Was really adorable , keep it up mam , u teach very Well , may god reWard u

  • @dsears
    @dsears 2 роки тому

    You are a great teacher. Thank you.

  • @adarshbharti8782
    @adarshbharti8782 2 роки тому +1

    Crystal clear topic thanx madam...

  • @asadnaqviii
    @asadnaqviii 3 роки тому +1

    I was thinking to drop C++ and learn some other programming language iinstead until I saw your videos! You have explained each and everything brilliantly and made everything look fun and easy :D Love from Pakistan

  • @alexfrozen
    @alexfrozen Рік тому

    OMG... I was looking for operators implementation in C++, but found a Beauty...

  • @saishraut4139
    @saishraut4139 2 роки тому

    Thank you so much. Good explanation

  • @anwar6971
    @anwar6971 3 роки тому

    Thanks. For making things clear

  • @vutiendat3601
    @vutiendat3601 3 роки тому

    I'm Vietnamese. I have ever learned coding from Vietnamese teachers, but I have something to be not understanding. So I decided to learn from foreigner that you. At first, I have to watch and translate at the same time because of my poor English. So now, I got something I didn't understand before. Thank u so much!
    p/s: your voice is easy to listen to! ❤️❤️❤️

  • @dekafmusic
    @dekafmusic Рік тому

    Your explanation is really superb.

  • @atharvachundurwar5311
    @atharvachundurwar5311 2 роки тому +1

    Great Video!!

  • @RupamSasmalYt
    @RupamSasmalYt 2 роки тому

    Great explanation !

  • @hansikathathsarani3762
    @hansikathathsarani3762 2 роки тому +1

    Today example taken to describe is awesome.

  • @HerHappyTeachings7717
    @HerHappyTeachings7717 2 роки тому +1

    Wow such a perfect explanation, thankyou so much, make more practice questions on c++.

  • @jojo_v5395
    @jojo_v5395 3 роки тому

    such a clear and smart explanation. thanks so much

  • @ernestrobert5575
    @ernestrobert5575 2 роки тому +1

    I love your videos ! :D

  • @voceviva6080
    @voceviva6080 10 місяців тому

    I am an Opera Singer and also a voice teacher and a choir director. When i was young I was studying programming and chemistry which i never finished. Due to Covid I returned to study programming again, but it has been hard on me. Because I am not so young, although your videos and explanations have helped with my understanding of how the process should be done. I wish all teachers were helpful as you are.

  • @zaitmartinez5502
    @zaitmartinez5502 2 роки тому

    Thanks a lot for your teachings!