You're probably the only person out there with this level of production value helping people how to code, keep it up man, you're a real help
@yaelmilo703 жыл бұрын
I know Im asking randomly but does anyone know a method to get back into an instagram account?? I was dumb forgot my password. I would love any help you can offer me.
@anonymouscyborg56103 жыл бұрын
@@yaelmilo70 Forgot Password Function: I am not even here baby, I am hallucination
@GamePilLP2 жыл бұрын
@@anonymouscyborg5610 And I started to realize: I am not hallucinating, I am the hallucination. I have become hallucination. The Destroyer of sanity
@kianjs Жыл бұрын
@@yaelmilo70 if you send me $100 i wont get your instagram account back but I will use the $100 to buy myself a new mouse :)
@krakor926 жыл бұрын
0:42 Damn you dynamically cropped the amazon logo with your arm for only 5s of video. I'm impressed!
@TheDuckPox6 жыл бұрын
you do know he can do that automatically right?
@krakor926 жыл бұрын
Nop i’m a low-skilled video editor ^^’
@kylevn016 жыл бұрын
@@krakor92 he may be used adobe after effect for the 3D text.
@thewiedzmin60625 жыл бұрын
This is one the nerdiest comments I have ever seen in a nerdy video!(I mean in a good way of course!)
@marflage5 жыл бұрын
Had you not pointed it out, I might not have known
@StarContract7 жыл бұрын
I'm glad you got sponsored. Heads up for the company that financially reward people like you who spread knowledge
@carrapaz36454 жыл бұрын
9:50 cherno: "this class is trash" me who worked 1 and a half hour copying and expanding on this class: T_T
@DonaldMurf3 жыл бұрын
same
@forhadrh3 жыл бұрын
LOL! 😆
@yeadatwunyt80043 жыл бұрын
resonating with the collective "bruh" of 260+ people around the world
@phu21109 ай бұрын
fr
@asmrkratosbone4337 Жыл бұрын
Thanks!
@mastershooter643 жыл бұрын
3:14 "Alright there we go done, _can I go now?_ " literally almost every student in every school ever
@thomasmcoscar6815 жыл бұрын
I love how you go through what is functionally necessary vs what is convention and standard practice. This does so much to help us understand what is happening and why. I'm super looking forward to continuing through this C++ course and then eventually into OpenGL.
@srisairayapudi6074 Жыл бұрын
Hey, I was curious to know if you did get into the OpenGL course. I'm doing this C++ right now and wanted to know if i should do OpenGL next or not. I'm interested in both game dev and game design, but I don't know what to start next, but I love Cherno's way of explanation and wanted to know which to do next. Hope you read this and Thanks in Advance!
@goombone1717 Жыл бұрын
@srisairayapudi6074 how its going ur learning?? you became a great dev in this 6 months or quitted?
@igniex3 жыл бұрын
I started watching this C++ series and I just wanna say, you're awesome at presenting and communicating this information! I have some surface-level knowledge of these concepts already, but I can tell I'm learning quite a lot from these videos already. Thank you for sharing the knowledge you've gained with experience, and so concisely.
@hispantrapmusic3012 жыл бұрын
How u doing now?
@goombone1717 Жыл бұрын
how its going ur learning?? you became a great dev in this 2 years or quitted?
@sablanex7 жыл бұрын
Nice to see some sponsors!
@HappyMatt12345 Жыл бұрын
I went ahead and named the log level variables LevelWarning, LevelMessage, and LevelError instead of LogLevelX because when you write them out outside of the class, you get Log.LogLevelX which is a bit redundant and Log.LevelX reads a lot better. Nitpicks out of the way, very informative tutorial as always!
@leixun4 жыл бұрын
*My takeaways:* 1. Convention for writing class member variables 4:48 2. Using more than one public to separate variables and methods 6:10
@gethriel Жыл бұрын
Loving the videos! Thank you. With programming I'm the opposite: if I really want to focus, I go to silence. Now, if I want my workday to fly by, music; but that cuts productivity for me (not necessarily a LOT), and these days i would rather be productive.
@roja3 жыл бұрын
Commenting for your exposure. The best channel on KZbin for C++ !!!
@radekseky45713 жыл бұрын
You really should have done this traditionally from top to bottom. The fact that you wrote in main first, coupled with your fast writing and explaining, resulted in me being pretty much stunned looking at the screen the whole time, failing to follow, and then the video was over. At the end with all the code copied in front of me it helped a lot as a guidance through all the additional replays.
@michaelblackmer81833 жыл бұрын
This is the best C++ series I've seen on youtube. I know how to program, just trying to get a handle on the language and the syntax. Thanks man.
@runetimon7 жыл бұрын
Nice! very interested to see how you improve this.
@smileynetsmileynet79223 жыл бұрын
Rewatching this because I need to remind myself about classes in C++. I'm going to add them to my language pnf. Right now, it should be able to do what C can.
@NurGarciaTerrassa Жыл бұрын
My university teacher recomended theese lessons in order to prepare me for their own internship, and just a few videos in I'm already learning a lot! Thank you for theese high quality lessons!
@ronboprime4 жыл бұрын
Omfg dude. what the hell is this? I have been reading articles and books and whatnot trying to teach myself code since this whole covid thing went down. I been struggling with classes the last little while. You, though! YOU! thank you! so very much! Also, your conventions are really handy, and help out tons! I like the structure and speed of your videos as well. All Killer, no filler. Thanks again! Keep on keepin on!
@karthicksaran654 жыл бұрын
3:13 Me in classroom literally every second
@sablanex7 жыл бұрын
Log class done, can I go now. LMAO
@abdulmoizsheikh80317 жыл бұрын
I spat my coffee lol
@ToxicityGameDev6 жыл бұрын
Yes, was def funny haha
@sha1_________________545 жыл бұрын
I don't get it.
@martingaens20734 жыл бұрын
@@sha1_________________54 3:10
@sha1_________________544 жыл бұрын
@@martingaens2073 that was 8 months ago but thanks for explaining the joke
@rongarza9488 Жыл бұрын
The best part of the video is after 10 minutes when you say this is not the way it is done. Great, thank you very much. 12,000 people probably thank you too.
@DTGplays Жыл бұрын
Love the series. I wish I did not have to work a crappy 9-5 and could dedicate my whole time to learning C++. Keep the great content up!
@modernmage Жыл бұрын
same
@marflage5 жыл бұрын
Thank God you explained at the end of the video how you would never use this type of messy code, otherwise I was gonna be over-smart here and write the code neatly. Through the whole video until the the point where you clarify, I was thinking "Noway, he writes this type code. His other videos are the opposite". Nevermind, I am just dumb
@sebve93995 жыл бұрын
Please make a series about C, I'll watch everyone of the videos 100x I promise.
@21pandas71 Жыл бұрын
This series is addicting, thanks
@janusztarczykowski90036 жыл бұрын
I really like your videos, and the way you explain things, but as someone with a bit of experience in software development I'd recommend two things: not creating big classes with multiple functionalities (also called Singe Reponsibility Principle in SOLID princples) and not using hungarian notation in modern code, it makes code less readable and can introduce bugs. A really good book by Stephan Roth called "Clean C++" is a great resource to learn to write modern cpp code.
@JayKalunge10 ай бұрын
It got a little complicated in a short time but your explanation skill handled the complexity very well... tough I won't recommend this series to absolute beginners who just thought of learning C++, you might have to know a little about these concepts before following this this series... but its no harm to follow even if you are a beginners, its just that you might have to search a lot of things to get the idea what's really going on here overall i would say its a great series... its good that we get all the useful information in just short amount of time 😊
@voodoomotion58554 жыл бұрын
I've watched a few of your tutorials now and wanted to say big thank you for the effort you've put in. Always nice listening to someone who is enthusiastic about what they do and communicates it so clearly. I haven't programmed in C++ since the mid 90s and even then my skills were a bit hit and miss. It's been a steep-ish learning curve getting to where I need to be to programme plug-ins for After Effects, and you are definitely helping me all the way! Thanks and merry Christmas!
@arielvinda66247 жыл бұрын
rad new hairstyle Yan!
@mariacunha85082 жыл бұрын
So grateful for your channel, honestly!! Saving me a day before midterm
@nincompoop172 жыл бұрын
You are an absolute legend
@brunooliveirasoares74894 жыл бұрын
makes no sense the number of views vs number of Likes Tks for the wonderful job!
@maxterdonado20134 жыл бұрын
Thank you for your effort in teaching, I love the way you keep it simple and entertaining yet you don't treat your audience like preschoolers, that kind of condescending language used by some youtubers can get annoying. Subscribed :)
@youssofprogrammer75462 жыл бұрын
I love these videos that you make very thanks for you the cherno and especially I love that chicken in the background
@w3w3w35 жыл бұрын
Great video! I deffo had a moment like... I would never do this like this lol. But I get why you have done it, and I tried to take away the main syntax and c++ points from it. Thanks!
@ZubairKhan-yg4xy5 ай бұрын
Thanks for this amazing series... I love you 😭😭😭
@ItachiUchiha-wd5kk10 ай бұрын
You have the best videos in c++ Thank you so much for such cool content Unfortunately, this video stopped displaying any automatic subtitles after 2 minutes, which made it difficult to translate the meaning of the text But still, thank you for having such high-quality content thanks to you
@edpearce22815 жыл бұрын
Could you use an enumeration type for the log level warning?
@AlexTheGreatish6 жыл бұрын
3:12 How I feel after writing one line of code at work.
@anshulb.92124 жыл бұрын
how it feels to chew 5gum
@popcultureprogrammer2171 Жыл бұрын
A little thought I had about a better way to implement this - make m_LogLevel an int that stores flags corresponding to different levels. For example, the warning's if clause could be if(m_LogLevel && logLevelWarning){...}. The user could define more than just three types of messages to print. Maybe define a struct called logMessageType that holds a const char* and a bit mask (set to 2^N), which the log class could use to display that message type (using the const char * when printing the message type, eg "[GRAPHICS]: OpenGL is deprecated" using a list of those structs Maybe that struct can also hold which color to use when printing?
@atilacorreia5 жыл бұрын
I would use Bit Fields for the type of log messages. No need to carry a whole integer for that, but I'm sure you know that. I haven't seen Bitwise operations in any of your other videos. Maybe it's a good topic for a new one. Cheers!
@wildstomper62326 жыл бұрын
Hello! I know this is video was uploaded 1 year ago but I need to ask this question. What's the difference between header and class? I am aware that you'd need to include header file such as #include, but isn;t this same? Aren't headers used to make things more prettier(aligned)?
@zalchan29376 жыл бұрын
I'm not sure if you still need the answer but traditionally, when you're working on a big project, you might use header files to define classes. You're pretty much right that its main purpose is organization. Also, in c++ you include your header files as #include"class.h" instead of using But basically a header file is just a separate file that interacts with a .cpp file and it mainly consists of class definitions. Yikes I hope I even understood the question @.@
@gokulram49502 жыл бұрын
Can you also talk about Design patterns and some examples to implement it in C++
@richtourist7 жыл бұрын
Great! Looking forward to seeing how you adapt this to be 'production' code. Like your style, clarity, and just the right speed, not too slow, nice and succinct. Damn, looks like I am going to have to head over to Patreon and do the right thing :-)
@christoforostsiolakis4152 жыл бұрын
Second time watching these. What an amazing series thank you!
@ricgreen12 жыл бұрын
Huge Thank you Cherno!
@SeamanGR6 жыл бұрын
Your channel is a treasure! Thanks!
@CubedAgency3 жыл бұрын
Awesome content! I've been following this tut series from the beginning. Your production value is fantastic and I do like that you cut back and forth between the screencap and yourself talking. However, as a person learning and following along with you and your code, I do prefer to see the screen longer instead of cutting back to yourself. When following coding tuts I let the speaker continue talking as I keep referencing the code while typing to keep up. Unfortunately, the cutaways are so quick that I keep having to stop your video to see the actual code you just wrote. Again, I love the content and I think your teaching ability is great and super easy to follow along with! But sometimes when you cut back to the screen, the part I'm looking for is now offscreen and I have to skip backward a few times to see what code I missed. Hope this helps inspire future videos. Keep up the great work! I subscribed, and I've been liking all the videos along the way! Hope it helps you!
@Robinglover31757 жыл бұрын
Great idea for a few episodes!
@Mr_6362 жыл бұрын
I know I am late to the course, but as I learn a new language I like to try and explore new options as I learn. in doing so I found a way to simplify code a little bit. I shortened it by about 13 lines! #include class Log { public: const int LogLevelError = 0; const int LogLevelWarning = 1; const int LogLevelInfo = 2; private: int m_LogLevel = LogLevelError; public: void SetLevel(int level) { m_LogLevel = level; } void MessageLog(const char* msg, int level) { if (m_LogLevel == LogLevelError && m_LogLevel == level) std::cout
@rtdietrich2 жыл бұрын
Yes, it works and I also find it very good to do something like this for practice. But I also think that this code is NOT understandable in one look and therefore it is bad code. Rule: Optimize code only where it matters
@kadeska23863 жыл бұрын
Good video man. Thank you for the videos, they are helping me learn.
@bondymagnomous35447 жыл бұрын
So, the next episode will be enum, right?
@BOTHLine7 жыл бұрын
Or static methods/attributes. Since he always has to create an instance of Log. If he wants to use the Log functionality in basically every other class, he has to handle the same instantiation in all of these classes (unless he wants to use different instances.. but I don't think that'd be the point). It could even go as far as to show the concept of singletons.
@MrAlbinopapa7 жыл бұрын
Unless he needs the Log object to persist, creating new instantiations at the log site wouldn't be that bad, no reason to keep a pointer/reference around. In the example, there is few members and instantiating a class like this wouldn't be too expensive and there wouldn't be a need to have the object to persist. If you are writing out to the console then all messages will be appended, if logging to a file, you can open in append mode, and the message will be added to the end for you. This way, you won't keep a file open longer than you need. Plus, having different instantiations would allow you to log different aspects to different files with the same interface.
@bondymagnomous35447 жыл бұрын
Josh Smith Great note. As always, it all depends on what exactly are you trying to achieve.
@BOTHLine7 жыл бұрын
Sure, if you talk about a project of that size. But I think he will always plan for the future. And then you have to consider about something like that. You'll have your huge engine and then you don't want to instantiate a new instance of log all the time. And logging into different files with the same instance isn't a real problem too. You can organize the different log types within enums and thus use them to chose from different files to write in.
@mrprick71836 жыл бұрын
Why does your hair look so different every video.
@carbonsx34 жыл бұрын
Implemented with a random seed... :D
@AlainDjiZ4 ай бұрын
thank you bro
@marchenwald46663 жыл бұрын
0:42 *How qualitative do ya want your video to be?* The Cherno : *Yes*
@davidecalaminici29376 жыл бұрын
Your tutorial are very informative. Just one suggestion, maybe i already said to you in another video: pleeeaaaaseeee, can you talk more slowly for non native english? Thank you
@joelkershaw23154 жыл бұрын
set speed to x0.75 my friend
@rae46525 жыл бұрын
6:30 Why not use enums? :O
@rafal9ck8173 жыл бұрын
i did put Enum in there just to delete it few seconds later... 9:58 here is answer.
@RenkoGSL3 жыл бұрын
Thank you so much for saying that about music.
@gmfCoding7 жыл бұрын
Nice video. I am really looking forward to the next one.
@maddoo232 жыл бұрын
Love this series, probably the best on youtube for C++. However, this class was the single most boring class ever coded on video!
@anilrao98194 жыл бұрын
you are wonderful brother keep going!!!!!
@nazar17447 жыл бұрын
oh man....this is the first video I didn't understand.
@joseluismatabuenasedano6881 Жыл бұрын
Amazing series, I am learning a lot with your videos. Just a quick question, I don't know if it might be in another video, what is the difference between . and :: when calling variables/functions from another class?
@zoriiginalx7544 Жыл бұрын
Member selection vs namespace resolution
@xkilla91128 күн бұрын
tutorial starts at 3:11
@playonce41864 жыл бұрын
Where is the improved version or how would it be improved?
@Undead34 Жыл бұрын
I liked that hair, it looks like the Final Fantasy hair, it looks fantastic.
@dariodusper70685 жыл бұрын
Why you are not dereferencing message at cout? Because without dereferencing you print out the address stored in the pointer. That's how you explained it in your video about pointers.
@sujatakale16734 жыл бұрын
Can u plz make a video showing all the special keywords that help u code so quickly?
@briggsmedia40456 жыл бұрын
Did you rotoscope a mask of your arm over "amazon music" at 0:40 !? Im big into motion VFX
@sammcelhannon28075 жыл бұрын
Surely it's possible to have the amazon music logo only show up on static parts of the image, so he probably didn't manually rotoscope it.
@zhangyilin82682 жыл бұрын
thanks
@npc69247 жыл бұрын
log.SetLevel() ------^------------ Is the standard different from Java? Am I thinking too much into it?
@Cynokine7 жыл бұрын
I noticed this too. Maybe this will be detailed in the future and was done on educational purpose here.
@sablanex7 жыл бұрын
It's just a matter of preference I'd say, but the win32 api has the first letter capitalized in functions.
@edtExodus7 жыл бұрын
There is no standard notation in C++, though the standard reserves some specific notations (things like the double underscore, which you shouldn't be using). In the end it's about what works best for you and as long as you're consistent with it, other programmers will not find it terribly difficult to adapt to your code. Consistency is a lot more important than what exact notation you use.
@JanithHarinda4 жыл бұрын
If you really learn something turn the speed to 0.75 but this guy is awsome
@preritvishal4 жыл бұрын
I turn to 1.50x ..... Is that okay? 😂
@bottlecapbeaver Жыл бұрын
9:55 You really should have said that in the beginning 🤣. I was freaking out that there was something that I was missing, but it really was just a simple, categorizes I guess? message executor.
@abdulmoizsheikh80317 жыл бұрын
Yoooo, thanks for the tutorial. How old are you mate?
@luciaveldera83053 жыл бұрын
Hi Cherno, I have a question about the meaning of this statement: const char* message. Why did you use pointer? Can we use "string message" instead of this statement?
@NovacStudios3 ай бұрын
Icl if Cherno vids was the only thing we would have to learn in Primary School, Secondary School, Collage and University they would off been Much more easier and I would off probably done alot better.
@HuyNguyen-fp7oz4 жыл бұрын
super! love your channel alot. Finally, i can understand many C++ concepts which made me very confused during university years
@websurfer52836 жыл бұрын
In this code: void Error(const char* message) . What does the * mean exactly. I know it's a pointer but what purpose has (const char* message) for this tutorial if anyone can explain. Thanks. I have been going through all the videos by the way. So I have covered the pointer video previously.
@levanfirtskhalava38366 жыл бұрын
it,s purpose is to pass the variable not value but by the address. this function by the argument get char pointer, address not value
@lopost076 жыл бұрын
It's a bit more complicated with char pointers as you noticed from the video you can pass string to functions that takes const char* but why is this possible if it's a pointer? This is called string literal, so behind the scenes memory with this series of characters is allocated somewhere and passed as normal pointer which it is. Hope that helps
@colinmaharaj2 жыл бұрын
I know this has been a while. I have 1 parameter that says the name of the log file. also I added critical sections because I have lots of calls that needs logging in many threads.
@tunamusic23144 жыл бұрын
does anyone know why he uses the pointer at line void Warn ( const char* message ) is it necessary to use it, as I known pointer to store the address and value of a variable so what its role in there? can anyone explain? thanks so much
@entity52094 жыл бұрын
3:12 legit me eveytime I start coding
@parko19654 жыл бұрын
Why no header file to accompany your class? I thought classes consisted of Declarations and Definitions hence header and cpp files.
@zephyr74 жыл бұрын
That is only done when you want to have your classes in different files, but in this case he declared and defined his class in the same file he will be using it in
@parko19654 жыл бұрын
@@zephyr7 Gotcha.
@hannesblack69497 жыл бұрын
I wonder why you never lost a word about unions so far. Please talk about as well.. tks
@Grynjolf6 жыл бұрын
Instead of using the "m_" prefix what are your opinions on using `this->`?
@lucasmorais36945 жыл бұрын
U can use it but is not the best method.
@gunrunjk6 жыл бұрын
What is optimized method using different concept? I really wonder how does it work. Do you have a plan to create a video in order to keep continue next video?
@bascik5 жыл бұрын
the chuck looks class
@manonthedollar3 жыл бұрын
Wait so... did you ever improve the Log class?
@igorthelight3 жыл бұрын
Maybe in his game engine series? ;-)
@sconosciutosconosciuto21965 жыл бұрын
6:45 enums?
@KennyTutorials4 жыл бұрын
Because this video about classes not enums.
@РоманКапуста-в1о7 жыл бұрын
Thanks for the video Could u create some video explanation for objects initialization in C++, coz afaik there are bunch of this. Thanks
@moeheinaung2354 жыл бұрын
I have a question. When you did not set "log.SetLevel(log.LogLevelWarning)" why did it print all three? If we didn't set it, shouldn't it give us an error? Or does the program set a default value like 0?
@escapeenrique4 жыл бұрын
i really like this hairstyle
@48_subhambanerjee222 жыл бұрын
Thank you brooooooo
@rarespauna28172 жыл бұрын
Why we used a pointer for the message variable ?
@adamhendry945 Жыл бұрын
Can you please do a video on pIMPL idiom/method?
@РоманСоленцов-с1я Жыл бұрын
Please, fix the subtitles in this video
@yiqiou1767 Жыл бұрын
"A lot of you watching this video being like 'what code even this is'". I am absolutely not one of them and feel this is exactly how i will write log class.....
@slymod Жыл бұрын
Anyone else find this video extremely fast paced & confusing compared to previous videos? Not sure if I skipped something or if Cherno ordered the videos in a way that this is hard to understand.
@alionking10234 жыл бұрын
_Me after finishing my hw in the detention room_ 3:14
@jarisipilainen38756 жыл бұрын
6:42 i was like thinking now he #define LOG_LEVEL_ERROR 0. question would that work same?
@MsJavaWolf4 жыл бұрын
Sure. I would not overuse macros though, with variables you will get compiler checks for the correct types etc, it's usually safer.