What is "using namespace std" and why is it considered a BAD PRACTICE? C++ Programming Questions

Поделиться
HTML-код
  • Опубликовано: 23 ноя 2024

Комментарии • 1 тыс.

  • @CodeBeauty
    @CodeBeauty  3 года назад +58

    📚 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.

    • @SA-oj3bo
      @SA-oj3bo 3 года назад

      Will you join me if I offer you a coffee? Did you explain somewhere in a video the purpose of #include ?

    • @AmberRathour366
      @AmberRathour366 2 года назад +1

      How kind. Thanks so much.

    • @MrDmadness
      @MrDmadness 2 года назад

      So basically using namespace std; == using a lot more memory, and having a less efficient program... yes ? I will totally understand you a coffee, I'm learning to code to get out of trades, I can stare at lines of code all day but 25 years in trades is taking its toll,on my body

    • @prime1marvel90
      @prime1marvel90 2 года назад +1

      Thank you for this video
      Love from India 😌

    • @remasteredretropcgames3312
      @remasteredretropcgames3312 2 года назад

      I get error out of the box making zero changes to the defaults and its a wild goose chase trying multiple failed proposed methods to fix it. They need to just stop changing visual studios unless they really like having even fewer programmers.

  • @l.p.1967
    @l.p.1967 3 года назад +739

    In addition to what you said in the video, a common problem of "using namespace std" is if you try to create your own function and give it the same name that is already present in std namespace, that can lead to name collisions and ambiguity.

    • @CodeBeauty
      @CodeBeauty  3 года назад +175

      Pinning this comment since it is very useful info, continue reading...
      For those that need an example to understand this, use the one below:
      In the std namespace exists a function called abs(), which returns the absolute value of a number. So if you try to do
      cout

    • @PhilipAlexanderHassialis
      @PhilipAlexanderHassialis 3 года назад +17

      @@CodeBeauty The sensible thing and the one most adhering to the roots of C++ (i.e. janky mainframes where the greater prophets Ritchie and Thompson first summoned The Daemons), should be to either:
      - Call the one that is lexically closest to main or simply the one declared in your program
      - Screw the above and call the one in the std library because you must respect other people's labour of putting it together
      - Screw everyone and try to call a random function whose signature matches your function's since the syntax tree produced during compilation throws a hissy fit
      - Screw the system by deciding that your function should arbitrarily be cast to a function that points at (char *)0, hence resetting your system when you call it
      - Or simply do all of the above in a not exactly random order if you are using Visual C++
      Pick your poison.

    • @OGBhyve
      @OGBhyve 3 года назад +2

      @@PhilipAlexanderHassialis * DEC PDP machines like the famous PDP-7 and PDP-11 were considered minicomputers at the time.

    • @eventhisidistaken
      @eventhisidistaken 3 года назад +9

      Is it really a common problem? It's really only a problem when people who have no training and no experience try to write code. You wouldn't trust a car built that way, and neither should we expect or allow production code to be built that way. If you are so ignorant that you are unfamiliar with the standard template library, you have no business writing code professionally.

    • @nishantjoshi6712
      @nishantjoshi6712 3 года назад +6

      I also didn't understand this until I started competitive coding and got clashes for min and max named functions. I used 'using namespace std;' but i also made min functions like
      int min(int a, int b, int c){
      return min(a, min(b, c));
      }
      this type of function is only possible if I use min from as std::min.
      took me some time to understand

  • @ozgurbarsayhan226
    @ozgurbarsayhan226 3 года назад +344

    The English you speak is really clean and understandable for even people not good at English like me.
    In this way, I practice both English and programming at the same time.

  • @zombiehellmonkeygaming1956
    @zombiehellmonkeygaming1956 3 года назад +138

    I've been using 'using namespace std' without even knowing it was bad practice, thank you for the very clear explanation.

    • @ChrisCarlos64
      @ChrisCarlos64 3 года назад +26

      In small projects it can be fine, something for playing and testing to just reduce some typing. However it can lead to a bad habit if you do it in larger projects, so often times it's best to keep bad habits away from smaller projects even if you're unable to remember that. I just only ever use it for the "hello world" equivalent of applications I write to test out some concepts.

    • @musashi939
      @musashi939 3 года назад +8

      Much more important is to understand why it's bad practice. It's not always black and white. There are a few things that are considered bad practice in programming and when you look deeper into it, you don't find a useful answer why. It's like it was a bad practice for whatever reason in the past but the original reason is already forgotten and remains only left in the brains of already dead people.

    • @obinator9065
      @obinator9065 3 года назад +2

      restrain "using namespace ..." to local scopes (and really only for absolutely unreadable things like std::chrono::high_resolution_clock). using aliases are ok too. (i.e using str = std::string) if you declare them in namespaces, (to be exact "unique scopes" that includes classes too!), such that locality precedence will be used.

    • @myenglishisbadpleasecorrec5446
      @myenglishisbadpleasecorrec5446 3 года назад +2

      90% of what I learned from C ++ afterwards turned out to be wrong in some way

    • @mxbx307
      @mxbx307 2 года назад

      @@obinator9065 You can also use the "auto" keyword for horrors like std::chrono::high_resolution_clock and the compiler will make a very good guess at what the type is.
      You can also define things differently.

  • @hemanthkotagiri8865
    @hemanthkotagiri8865 3 года назад +101

    This is by far, the most clear and concise explaination of why "using namespace std" is considered a bad practice for specifically "large scale applications". I absolutely love the way you teach, Saldina! Teaching is an art, and you certainly have mastery over it!

    • @saturn7_dev
      @saturn7_dev Год назад +7

      Really...she actually never explained why at all....

  • @tuandroidgeneral2091
    @tuandroidgeneral2091 3 года назад +577

    Sorry, i don´t trust people that doesn´t use dark mode....

    • @CodeBeauty
      @CodeBeauty  3 года назад +55

      Hahaha, why not? 😆🤔😋

    • @shottyman6013
      @shottyman6013 3 года назад +45

      @@CodeBeauty Your poor eyes. How can you use light mode? My eyes get burned when I use it.

    • @CodeBeauty
      @CodeBeauty  3 года назад +293

      I don't like light themes either, and I personally use dark ones, but I get messages from people who are watching my videos with a very bad internet connection, on a small resolution, and for them, it's much easier to read dark letters on the light background than vice versa.
      That is why I continue to use a light theme, even though other people commented that a dark theme is their personal preference as well. I believe that making it available for more people is a stronger argument.
      I would recommend tools like f.lux
      I use them with both light and dark themes, and they help a lot with eye strain. Or you can put on shades 😎😎😁

    • @j_respect5948
      @j_respect5948 3 года назад +22

      @@CodeBeauty that's so nice of yours

    • @j_respect5948
      @j_respect5948 3 года назад

      @@CodeBeauty are u a girl or a trans?

  • @davidjohnston4240
    @davidjohnston4240 3 года назад +364

    I've never used "using namespace std;" but now I know it's not recommended, I'm going to use it all the time.

    • @pradhumnarajput9722
      @pradhumnarajput9722 3 года назад +12

      @@381delirius *world
      *return 0;
      }

    • @mparagames
      @mparagames 3 года назад +18

      @@pradhumnarajput9722 but he wanted to output "hello worlf", not "hello world"

    • @justjuniorjaw
      @justjuniorjaw 3 года назад +1

      @@pradhumnarajput9722 He copied and pasted it, not typed it.

    • @CasualCoder
      @CasualCoder 3 года назад +10

      Some just want to watch the world burn...

    • @eventhisidistaken
      @eventhisidistaken 3 года назад

      I recommend that. Your brain will now explode from illogicing itself.

  • @AnupamShaw
    @AnupamShaw 3 года назад +17

    I never thought about the reason we use "using namespace std", but thanks to you because now I've increased my knowledge. Each day we learn something new.

  • @daophilac
    @daophilac 3 года назад +50

    I am already a professional programmer. So I didn't ask for anything. But RUclips gave me a good explanation, clear English and a perfect beauty anyway.

    • @PIFFthePUFF420
      @PIFFthePUFF420 3 года назад +1

      I believe you when you say you're a programmer

  • @Rockout52
    @Rockout52 3 года назад +66

    I don't remember my teachers being this nice when I was at school, I might of actually enjoyed going if they were, I'm working my way through your videos right from the start, I'm also reading a couple of C++ books, your video's are much better for explanations and understanding. My motivation for learning to code is doing something that you can get totally immersed in so you don't have to think about the isolation and loneliness of lockdown, so you are my only company and mentor, I've watched over 20 of your video's so keep them coming please.

  • @rakeshbaboeram1808
    @rakeshbaboeram1808 3 года назад +14

    I never understood C++ in college. Thanks for explaining topics in a clear manner. I'm attending the 10hrs full course.

  • @mroldanmx
    @mroldanmx 3 года назад +5

    Thanks for taking the time to explain it so eloquently!
    I hadn't programmed in C++ since college (~10 years ago) and never really thought about "namespace std", I just used it so the programs would run.

  • @tf.y
    @tf.y 3 года назад

    i'm completely amazed at how clean your english is. i'm not a native english speaker and i could understand every word you said.
    As for the video, it was a great explanation. I used namespace without even knowing what it did. i just thought it was necessary because i watched it in tutorials.
    now i am not gonna use it anymore.
    Thanks for this great video! you gained a new subscriber.

  • @andreialexander405
    @andreialexander405 2 года назад +7

    Saldina, you are absolutely brilliant. Enormous thanks for your work here on this channel.

  • @WispsOfLight
    @WispsOfLight 2 года назад +2

    I subscribed when I heard "share what you've learnt with other people who don't understand" instead of "share my video."

  • @jackzugna5830
    @jackzugna5830 3 года назад +3

    Another example for not using "using namespace std" is, for example, if you need a custom class, or struct, with the same name as the one in std's namespace.
    Example:
    using namespace std;
    struct string {
    //error
    };
    -------------------------------
    //I can write:
    using String = std::string; //if you need of this.
    struct string {
    //no error
    };

  • @Yohaan20005
    @Yohaan20005 2 года назад +2

    Thank god finally i found c++ depth explaination course 😭😭😭 love from india mam

  • @sieyk
    @sieyk 3 года назад +63

    Been coding with C++ for awhile and never knew you could do "using namespace::function;". How wonderfully useful!

    • @igorswies5913
      @igorswies5913 3 года назад +2

      if you do that then what's the point of having the function in a namespace?

    • @sieyk
      @sieyk 3 года назад +3

      @@igorswies5913 because it's used mostly for functions that are already defined in a separate namespace. it's just to remove the namespace scoping for that particular method.

    • @israellewis5484
      @israellewis5484 3 года назад +6

      @@sieyk And if you don't need the whole library of functions, no point in using namespace when you can define the specific functions you need. It saves memory and compile time.

  • @bstrouble
    @bstrouble 2 года назад +1

    Thank you! Im reviewing C++ as I am becoming a programing tutour at my local college

  • @000adrianelpiola000
    @000adrianelpiola000 3 года назад +3

    You are a good teacher, even better than my university's teachers. I can understand you better than a teacher speaking my language.
    Gettings from Argentina.

  • @vishwa_tennyson
    @vishwa_tennyson 2 года назад +2

    thank you for making a clear video about namespaces

  • @mayanksuthar4967
    @mayanksuthar4967 2 года назад +3

    your way of explanation is amazing thanks for clearing all my doubt.

  • @slasankautube
    @slasankautube 2 года назад +1

    a years back i have find all over the internet a solution for that question , got no chance , but today i have realize what exactly namespace is , and as you said i was only knew it was bad practice but not know why until now thanks for the tut .

  • @lilo621
    @lilo621 3 года назад +100

    In a nutshell: it's basically like borrowing a whole shelf instead of the three books you actually need for your homework.
    EDIT:
    AND...
    Specify from which book it comes from in order to do away with ambiguity
    Ex.: bookOnChildren::kid() vs bookOnGoats::kid()

    • @marym9003
      @marym9003 3 года назад +3

      Wow, great example, love it!!

    • @abduldanish9953
      @abduldanish9953 3 года назад

      Lilo start a RUclips channel your nutshelling of concepts are awesome 😂

    • @yensteel
      @yensteel 3 года назад

      Wah, so simply explained!

    • @aeros39
      @aeros39 3 года назад +5

      and why not borrowing the whole shelf? what is the disadvantage? does it make your program slower?

    • @thetwogoats6851
      @thetwogoats6851 3 года назад

      That was funny and really explained everything 😂

  • @user-qy8cb8iw9l
    @user-qy8cb8iw9l 2 года назад

    Very well done. Clear understandable English. Clear structure in explaining. This helps beginners and hobbyists a lot. Thank you very much.

  • @Eliel10268
    @Eliel10268 3 года назад +67

    Do a c++ algorithms and data structures full course please

    • @mujtabamujeeb786
      @mujtabamujeeb786 3 года назад

      I second that. Please youre really good at explaining things

    • @birdhunyar2327
      @birdhunyar2327 3 года назад

      data structures aint a girl's job xd

    • @AlexisSuarezDev
      @AlexisSuarezDev 3 года назад +4

      @@birdhunyar2327 why not?? they are good as well as boys. this is the most stupid comment i have read.

    • @mujtabamujeeb786
      @mujtabamujeeb786 3 года назад +5

      @@birdhunyar2327 r u dumb or something? This is the most ridiculous statement I’ve ever heard. Just by your statement I can tell you’re one of those piece of shit. She knows more than you could ever know. She is smarter than you bro move on.

    • @AlexisSuarezDev
      @AlexisSuarezDev 3 года назад +1

      @@birdhunyar2327 the olny little brain here is your brain. girls are powerful for those topic too.

  • @prathamtagotra2054
    @prathamtagotra2054 2 года назад +2

    Already know everything explained in this video but still watched it till the end 😁

  • @Hjud-n3j
    @Hjud-n3j 3 года назад +5

    You are the only person that gets me excited about programming. This is really fun. This is a very good video. Keep it up with the good work, Saldina.

    • @CodeBeauty
      @CodeBeauty  3 года назад +1

      Wow, that is the best compliment. I'd like to motivate everyone to learn programming! Thank you! 🙏💙

  • @AlexandruAlexe07
    @AlexandruAlexe07 3 года назад +1

    I saw a lot of tutorials where people used std:: and I was very confused. Thank you for the explanation

  • @samsonjoe180
    @samsonjoe180 3 года назад +6

    thanks for the clear and concise explanation....
    You are making me love C++

  • @Affan.Ehsham
    @Affan.Ehsham 3 года назад

    I fall in love with ur simplicity to explain complicated topics in essie wayyy lov from India

  • @JoaoVictor-ge8bx
    @JoaoVictor-ge8bx 3 года назад +6

    Holy shit, I just started to learn C++ by my own and stumbled into this exactly same question and couldn't find any clear answer. Thank you for this !

    • @manusharma9089
      @manusharma9089 3 года назад

      Same thing happend with me .
      Love you ma'am.

  • @killer429
    @killer429 Год назад

    What if you did:
    using namespace1::age;
    using namespace2::age;
    std::cout

  • @NebulaM57
    @NebulaM57 3 года назад +3

    This was very informative. Thank you for your simplified explanation. It also helped to explain the double colon operator as well as a better understanding of the Using command. I also really enjoy how you show the compiler output compared to the PVS-Studio checker. I think that's something many tutorials miss when teaching coding. If you can't understand the debug errors, you'll never increase your coding knowledge. Thank you again!

  • @merouanebenderradji1582
    @merouanebenderradji1582 3 года назад

    this is a great one you are probably the best one who teaches C++ you sound like you know it in and out

  • @вадимкочик-р3н
    @вадимкочик-р3н 3 года назад +3

    Hello from Russia!
    Your videos is helping me to be a good student, thanks :)

  • @alchiissa2231
    @alchiissa2231 Год назад +1

    Your simplicity in explaining the code, is very apreciated, many thanks

  • @abdulrahmanalshameery7097
    @abdulrahmanalshameery7097 3 года назад +13

    Although I am Arabian, but when I hear to you i am imagining as l hear to Arabian person, because your spelling is very very good.

  • @tenaciousb4731
    @tenaciousb4731 Год назад

    Just started my first cpp college course
    And they do use namespace STD at the beginning of every program tutorial
    She did a good job of explaining why they do
    As well as why programmers should not do it, outside of a tutorial

  • @scottv6506
    @scottv6506 3 года назад +3

    You are and excellent teacher. I never really understood the differences. You have completely cleared it up for me. I hope you become huge on youtube. You deserve it and your skills shine through beautifully. Thank you

  • @human3444
    @human3444 2 года назад +1

    I have tried to learn C from tutorial videos for years, but I couldn't concentrate and follow through to the end, but when I first saw your video and how you expressed it clearly and without borders, relatively fast and with good example, I was excited. I was struck and turned into a basic C language subject. I understood well and easily. Thank you very much for your efforts in the advancement of science and service to humanity. I am praying for you, O God. With his permission. I wish you health and success. Also, thanks to your respected family and teachers who taught you. And I am also proud of the place where you grew up. With best regards

    • @st4ndby
      @st4ndby Год назад

      You overdid it Bro. No you just a creep

  • @malgailany
    @malgailany 3 года назад +3

    I really like the clarity and simplicity of your videos.
    Thanks.

  • @duepyter215
    @duepyter215 3 года назад

    I forgot everything I know about cpp but every time I watch your videos I remember what I went through to learn cpp.
    Thank you.

  •  3 года назад +3

    I just found your channel and I want to thank you for this precious content. Saludos desde Colombia.

  • @gauravpathak560
    @gauravpathak560 3 года назад

    mam, really I have never able to understand before about namespace but thanks to you for making such a videos, I don't have a words to say how I thanks you

  • @Nitramynot
    @Nitramynot 3 года назад +3

    Hi! Second day here learning C++. The thing is, why using namespace instead of just giving a different name to a variable? Does it work as a structure in other languages with variables, functions and so on?
    Other thing about bad practices that I've been reading is system("pause"), which only works in windows, not in macOS or Linux. Can you give more examples about this and maybe some alternatives? Thanks for your work, your videos are great.

  • @haseensiddiqui2087
    @haseensiddiqui2087 2 года назад +1

    Thank you so much for this answer. I am a beginner to C++ and I had a lot of confusion. Thank you for clearing up my confusion!

  • @Dziugis
    @Dziugis 3 года назад +23

    So you should probably use `using std::something_here;` on really big scale projects where you need that code would work as fast as possible and for regular use `using namespace std;` is fine

    • @user-sl6gn1ss8p
      @user-sl6gn1ss8p 3 года назад +8

      There shouldn't be a difference in speed on the compiled code, as per stackoverflow.com/questions/9324844/will-folders-and-namespaces-affect-performance-in-c-and-cross-platform
      The problem, as I understand it, is more along the lines that if you always go "using namespace std" at the start of every file, you're essentially negating the namespace - namespaces are useful for organizing the names of your functions and variables, and by unleashing std you are actually limiting yourself. Since std is so big and also deals with some very common things, it's not unusual that at some point you - or a library you are using or a code from someone else you have to work with - might want to call something else by a name which already exists inside the std namespace (say, a custom string class), and then you'll have to deal with that, which can be a problem.
      Now, personally, I've never had trouble with this - I believe it's one of those things that matter a lot more for bigger code bases shared between a group of people -, but even them I like the clarity of knowing I'm using the std version of a function or class instead of some custom one.

    • @cleanpoop9929
      @cleanpoop9929 3 года назад +1

      @@user-sl6gn1ss8p that makes sense. Thanks!

  • @Cerv_guitars
    @Cerv_guitars 3 года назад

    It's nice to see videos that aren't 5 years old on the youtube. Thanks for putting in the time to help us beginners.

  • @pierreabbat6157
    @pierreabbat6157 3 года назад +8

    Another thing: DO NOT EVER use "using" in a header file! If you use "using" in a header file, there's a chance that another programmer will include your header file and define "string" or "isfinite" or whatever in his .cpp file and get the wrong one.

    • @CodeBeauty
      @CodeBeauty  3 года назад +3

      Great advice! Thanks! 🤗🤗🧡

  • @sidharthanand9946
    @sidharthanand9946 2 года назад +1

    Was writing using namespace std for years without knowing the reason behind it. Loved this video. Already subscribed.

  • @fy9090
    @fy9090 3 года назад +3

    I like your teaching and it is very simple and easy to understand. Can you do some windows system programing (API)using C++ tutorials in future ? Thank you.

  • @mostafafadel2735
    @mostafafadel2735 3 года назад

    You are great, simple explanation simple English to non-English speakers you've achieved the difficult equation. thanks alot

  • @Sp3ctroMusic
    @Sp3ctroMusic 3 года назад +23

    Thank you for clearing my doubt 🙏❤

    • @CodeBeauty
      @CodeBeauty  3 года назад +2

      You’re welcome. I'm happy to help! 😊🥰

  • @jacobdavis000
    @jacobdavis000 3 года назад +1

    I'm just starting to learn how to use some stl utilities and found out that if I include 'using namespace std,' it ran out of memory map space for a microcontroller device I am programming, causing the link to fail I think.
    I looked (specifically) for this issue in your content and I am very fortunate to have found the answer to this very problem you talked about here. THANKS!! I'll be back to learn more from your videos.

  • @coefficient1359
    @coefficient1359 3 года назад +4

    Mam can you please make a video on lambda expression in c++, it looks like [&]. I can't understand from the web and you explain things really good.🤗

  • @DanielGarcia-yo9sz
    @DanielGarcia-yo9sz 3 года назад +2

    Even though I know how to code in C and C++, I didn't know what does that line of code do and also as u mentioned, why many coders say that this is a bad habit and I've been looking for the answer till now!
    Thank u so much for this explanation Saldina! 🙂

  • @ManojKumar-pi7hf
    @ManojKumar-pi7hf 3 года назад +4

    That was new for me. Great job gal ❤❤ Luv from India 🇮🇳

  • @chinonsoemmanuel1906
    @chinonsoemmanuel1906 10 дней назад

    I still don't understand why using "using namespace std" is a bad practice, if from the video tutorial, it looks beneficial. Kindly expand on this.

  • @TheRealGimmle
    @TheRealGimmle 3 года назад +3

    as a 15 year programmer (not C++) I love how you explain these things, although it was pretty obvious to me, I do see why people would be confused or try to use this.
    Great tutorials!

  • @joelarpin473
    @joelarpin473 2 года назад

    You made it clear as to what it does, but not why it's bad

  • @bositkhonsidikov8528
    @bositkhonsidikov8528 3 года назад +3

    Very great explanation from u, thanks so much indeed 🤗🤗🤗

  • @thomaspfaff1074
    @thomaspfaff1074 3 года назад

    Some youtuber don't know, what is namespace in C++. Now I have a better knowledge. Thank you

  • @mattasatishkumar4132
    @mattasatishkumar4132 3 года назад +15

    such good explanation!!
    may you get 1m subscribers god bless you keep teaching dear!!!
    love from INDIA!!!!!!!!!!!!

    • @CodeBeauty
      @CodeBeauty  3 года назад +7

      Thank you so much and God bless you to!
      Sending a lot of love for India! Will come to visit one day! 🇮🇳🧡🤍💚

    • @ankitraj4991
      @ankitraj4991 3 года назад +1

      @@CodeBeauty come soon !! You are always welcome ;)

    • @mattasatishkumar4132
      @mattasatishkumar4132 3 года назад +2

      @@CodeBeauty we are very much glad to see you in one day always welcome mam!!!!

  • @rogumann838
    @rogumann838 Год назад +1

    Even if I understood why its bad practice, I didn't feel like you actually explained why its bad at all for everyone else. I understood it because I'm for example familiar with why its bad practice in Python to import * from a module.

  • @requiem418
    @requiem418 3 года назад +4

    12:24, for people who already know what namespaces are and want to cut straight to the chase, and tbh the reason is obvious and implicit.

  • @aneesh3170
    @aneesh3170 3 года назад

    hands down mam .........you earned a subscriber. You solved my problem indirectly which was not even in the title......!!!!!!!!!!!!

  • @daxu9605
    @daxu9605 3 года назад +3

    The reason you gave is actually a reason to use this namespace. It’s to avoid naming anything that overlaps with the std lib. By using the entire std space, you implicitly make your code much more understandable. Whoever reads the code no longer need to check what namespace something very common like cout is in.
    It’s a very bad practice to name anything that overlaps with the standard lib. If you are going to do it, it’s best to explicitly declare your namespace. This way when the project grows larger, it will be very easy to decipher.

  • @koko-mt7zr
    @koko-mt7zr 3 года назад +2

    Thank you very much. I can now take a picture of how the code works and analyze what is happening. Thank you very much

  • @grayfoxtrots
    @grayfoxtrots 3 года назад +5

    Thank you for sharing.

  • @Filatov75
    @Filatov75 3 года назад +2

    The best teacher I have ever met.

  • @sil1235
    @sil1235 3 года назад +3

    It should be also noted that "using namespace ..." is especially problematic in header files, because it declares it for all users who include that file by default (and will apply to everything they use after that include in given file!). So if you ever decide to go with using namespace std or similar for whatever reason, make sure it is limited to implementation (cpp) files only... (the same problem is true actually also for the "using std::cout;" etc)

  • @rokomedancic349
    @rokomedancic349 Год назад

    Puno ti hvala. Puno sam naucio. I posebno su mi zanimljivi tips&tricks. Koje kod drugih nisam nikad vidio ovako detaljno objasnjeno. Svaka cast. Najbolja si do sada s obzirom na videa koje sam gledao o cpp-u.

  • @raz0229
    @raz0229 3 года назад +3

    Good to see other creators making these amazing tutorials for free. I have a channel too but not specifically oriented to programming, because often times they don't get enough views. Your videos motivate me to continue making progress. Good luck. God bless you. #RoadTo100K

  • @gorangogo740
    @gorangogo740 3 года назад

    Ovo je jedan od najboljih kanala na youtube sto se tice C++ jezika, sve je vrlo jednostavno i jasno objasnjeno ;)

  • @ankitraj4991
    @ankitraj4991 3 года назад +20

    Don't forget me ma'am, when you become a big youtuber😅😜will watch this in morning till then good ni8😃🙏🙏

    • @CodeBeauty
      @CodeBeauty  3 года назад +5

      Long way to go, but I'll give my best! Thank you for supporting me and have a good night! 😴🤗🤗

  • @monkeyrobotsinc.9875
    @monkeyrobotsinc.9875 2 года назад +2

    Epic producer tip: when you look this good, show some fullscreen shots when you are just talking.

  • @muhammadrehan2418
    @muhammadrehan2418 3 года назад +5

    Keep you the great work mam 🥰

    • @CodeBeauty
      @CodeBeauty  3 года назад +1

      Thank you, I will!🥰🥰

  • @anshulgupta7158
    @anshulgupta7158 3 года назад

    I am preparing for my college campus placement drive... And I was a bit weak in OOP concepts... But your videos helped me a lot... Thankyou so much... Love from India 🇮🇳🇮🇳🇮🇳

  • @kuttykitchen6623
    @kuttykitchen6623 3 года назад +4

    Wowwwwwwww that insane.. I didn't know about this i think "using namespace std" is just a decoration. Lol me 🙂
    And thenks for these information a subscribe from me.
    Oops! 🤓 there is no emoji for subscribe.. umm its okey for now "👍".

  • @SebastianSanchez65
    @SebastianSanchez65 3 года назад +2

    this is the type on information i like, intrinsic programming, not just because!

  • @garbanzo1997
    @garbanzo1997 3 года назад +11

    std::cout

  • @saxmanrex
    @saxmanrex 2 года назад

    This video was a truly phenomenal explanation of namespaces. Thank you!!!!!

  • @WinterRav3n
    @WinterRav3n 3 года назад +5

    Damn, I really love how Saldina "rolls" that "R" american way!
    By the way, great explanation and tut :)

  • @itachiuchiwa777
    @itachiuchiwa777 3 года назад +1

    You get a name coflict if only a name has been defined (not declared) more than once in the same Scope e.g:
    int main(){
    int age; // defined
    int age; // error identifier "age" is already "defined"
    }
    As you can see the code fails to compile because the identifier "age" is Defined in the Same Scope more than once which breaks the ODR rule (One Definition Rule).
    * To have same names defined in different scopes is OK but is a sign of bad design sometimes and error-prone e.g:
    int age; // global scope
    int main(){
    int age = 5;// local scope
    std::cout

  • @nelsondias1226
    @nelsondias1226 3 года назад +6

    Very good, from Brazil. \O/

    • @CodeBeauty
      @CodeBeauty  3 года назад +6

      Obrigada! Muitos beijos e abraços para Brasil! 🇧🇷💚💛

  • @ChaosArtist
    @ChaosArtist 3 года назад

    Thanks for the explanation on namespaces and talking about the standard library.

  • @shinamashiro9671
    @shinamashiro9671 3 года назад +4

    Yey! I'm not first but I'm early and it's already 2 am yet I can't sleep.

    • @CodeBeauty
      @CodeBeauty  3 года назад +1

      I also tend to work late at night. Sometimes there are pop ups on my videos saying something like "You get up in 3 hrs"
      Not the healthiest, I know, but... 🤷‍♀️
      Btw, it's currently 8pm where I live ⏰
      Good night! 🤗🤗

  • @carlosizquierdo1393
    @carlosizquierdo1393 Год назад

    Excellent explanation. Many of us use some concepts without knowing the implications they have. No one, or at least that I have seen, have bothered to explain this particular case. Thank you.

  • @mikoajzabinski3569
    @mikoajzabinski3569 3 года назад +3

    Say what?
    First of all, the namespace is not include. So "using namespace ..." do not include anything to your code. Remove iostream from the top and You will see.
    The problem with namespaces is something very different than what you mention.
    In your case, if you type after definitions of your namespaces:
    "using namespace namespace1;
    using namespace namespace2; "
    Your code will not break until you will use one of the members that share names in both namespaces. In one file program that may not be a problem, a bigger project with libraries and multiple files may have such issues. Furthermore, you creating ambiguity that may provide an additional challenge for someone debugging your code.
    Using is just a powerful tool to be used with a lot of caution. Adding spaces is a way to organize part of a bigger codebase. And using is not prohibited, use it sparingly, and never put it into header files :)

  • @gabriel-lyra
    @gabriel-lyra 3 года назад

    Your explanation took a long time, but it was so crystal clear that i feel like I truly learned.
    I just noticed the first part of my comment might be seen as an complaint, but it is in fact a thank you for sharing your time.

  • @blacksoulafro
    @blacksoulafro 3 года назад +6

    good video

  • @shivambhardwaj6809
    @shivambhardwaj6809 Год назад +1

    hey Saldina, i am coming from freecodecamp, your OOP course helped a lot. like tomorrow is my final university exam and i hadn't studied at all before.😌

  • @dundyd3612
    @dundyd3612 3 года назад +9

    08:16 - that was funny 😂😂

    • @CodeBeauty
      @CodeBeauty  3 года назад +5

      Hahaha, that was a mistake 🤷‍♀️😅😅

    • @TurntableTV
      @TurntableTV 3 года назад +2

      She forgot to put the using statement for english.😂

    • @moitest3628
      @moitest3628 3 года назад

      😂😂

  • @mrgreenjeansgenetics
    @mrgreenjeansgenetics 2 года назад

    I use it simply because I feel that it is more practical to write a program in as few line as possible while getting the required amount of work done.

  • @josepablolunasanchez1283
    @josepablolunasanchez1283 3 года назад +3

    1980: Only geniuses can be programmers
    2021: Saldina teaches normal people how to be a genius

  • @jronbroke
    @jronbroke 11 месяцев назад

    i never saw this type of explicit explanation .i greatly appreciate it.

  • @jesusadolfodiazcenteno5272
    @jesusadolfodiazcenteno5272 3 года назад +4

    "Hey you already define a variable called age once, and now you are trying to define another variable with the same name, why are you doing that?"
    "Well maybe because I'm an idiot"

  • @evanhutchinson9206
    @evanhutchinson9206 3 года назад +2

    Thank you for the crystal clear explanation. I am getting back to C++ (after a few years of using very high-level, dynamically typed languages on a daily basis). I remember hearing about how the "using namespace std" thing was not a very good practice but no clear explanation was given to me. Even in introductions classes at school, the teachers would use it but did not bother to give us some more details about this practice, as the language was not a very big part of our program anyway (it was mostly centered around Java, Python, and common database and web-related language).

  • @natnatxti
    @natnatxti 3 года назад +5

    The 33 dislikes are from David's and David's mom.