Introduction to the C++ Programming Language

  Рет қаралды 25,660

Dave Churchill

Dave Churchill

Күн бұрын

Пікірлер: 81
@DaveChurchill
@DaveChurchill 3 ай бұрын
Note: The class schedule changed since the first lecture. I have combined both C++ lectures into a single video, and added some live-coding sessions as well. This video was originally live streamed in Fall 2022 and edited for inclusion in the Fall 2024 course. This video is meant as an introduction to the C++ programming language for people who already know another programming language like Java / JavaScript / Python.
@AmmarShahin
@AmmarShahin Күн бұрын
I have worked as a C++ developer in the automotive industry for over five years. I finally decided to follow my passion and learn game development. I just came across your course, and I'm now sitting down and enjoying a review of all my C++ knowledge.
@justchris846
@justchris846 26 күн бұрын
BEST C ++ tutorial I've watched !
@not-a-living-soul
@not-a-living-soul 3 ай бұрын
For those who were not in inperson class, professor mentioned in early UNIX systems, the default name for the output of an assembler or linker was a.out. The tradition carried forward even after compilers like GCC became more widely used.
@taintedtaylor2586
@taintedtaylor2586 3 ай бұрын
You should do an episode on simple game networking, I love your explanations and especially your live coding session. I'd love to have a professor like you.
@DaveChurchill
@DaveChurchill 3 ай бұрын
@@taintedtaylor2586 I wish I could but I know almost nothing about networking!
@taintedtaylor2586
@taintedtaylor2586 3 ай бұрын
@@DaveChurchill It’s ok, thank you so much for answering!
@kafkaphoenix
@kafkaphoenix 3 ай бұрын
Thanks a lot for sharing all of this for free, really appreciated, amazing explanations aswell
@toby9999
@toby9999 Ай бұрын
Brilliant course. Even though I've been a C++ developer for 28 years, I learned a few things.
@nortski78
@nortski78 3 ай бұрын
If this is anything like your SFML lectures then it will be gold dust!
@Anonymous-cn6zl
@Anonymous-cn6zl 2 ай бұрын
I love your teaching style and attitude. I hope we can have an absolute beginner C++ course as this is quite advanced to some of us.
@bzzz4630
@bzzz4630 3 ай бұрын
You are an excellent teacher 🙂
@siddharthd6141
@siddharthd6141 2 ай бұрын
such a beautiful lecture !! i understood these consts and references and pointer's businesses so well ... i am very glad that i came through this course ! ❤
@computersciencestudentriverbat
@computersciencestudentriverbat 16 күн бұрын
Long video but very much worthwhile.
@Ficsher979
@Ficsher979 3 ай бұрын
Thank you, Professor Dave 🎉🎉🎉🎉
@ebrahimesmaeilian
@ebrahimesmaeilian 3 ай бұрын
even if you are not new to C++ i absolutely recommend you watching this tutorial, it will give you some "Aaaaah so that's why......" moment that makes it extremely useful to watch.
@pascalauclair4973
@pascalauclair4973 2 ай бұрын
Many Thanks, clear explanations 👍
@moveonvillain1080
@moveonvillain1080 3 ай бұрын
1:30:00 If you are not seeing this warning it's probably because you have not told the compiler to do so. Simply add the flag -Wall when compiling to see this error. File reading example 2:00:20
@chillidari-9392
@chillidari-9392 3 ай бұрын
I'm definitely not new to C++ and enjoy using it (can't say I'm the most proficient though!) but it's always great watching passionate and knowledgable educators at work. Your students are very lucky to have access to high quality teaching like this.
@mdshohidurrahman
@mdshohidurrahman 3 ай бұрын
Very effective 4 hrs i spent.Thanks
@yeshwanthkumar7764
@yeshwanthkumar7764 3 ай бұрын
Man was starting out the lecture with "C++ is not bad haha... Don't trust the memes... Pls" hoping his students were not scared, when all he had to do was show us the ferret right away. Subbed for George and his TA.
@gamolly
@gamolly Ай бұрын
In the living coding around 3:35:00, when you initalized int a and int b and printed their addresses, the addresses changed everytime you ran the program, but they were still contiguous. Is that because when you initalize them, they are always allocated in order on the stack memory? For some reason, I always thought it would be a randomized address except if it's an array.
@DaveChurchill
@DaveChurchill Ай бұрын
In my experience, stack variables which are allocated right next to each other in code are usually right next to each other in memory. But the C++ spec does not guarantee this. The reason their address is different every time the program is run is because the OS finds a different spot in memory to run the program.
@gamolly
@gamolly Ай бұрын
@DaveChurchill Thanks! I understood the random address, but was not expecting them to consistently be allocated next to each other. Thanks again.
@tuphdc8779
@tuphdc8779 3 ай бұрын
this guy is a total pro
@Anonymous-cn6zl
@Anonymous-cn6zl 3 ай бұрын
Sir, you dropped this 👑
@devon9374
@devon9374 3 ай бұрын
You missed the opportunity to talk about how C++ code is the backbone of modern practical AI via PyTorch, TensorFlow and especially CUDA
@h3ll0_w0rID
@h3ll0_w0rID 3 ай бұрын
2:39:41 you meant to say the unary operator is the equal sign
@DaveChurchill
@DaveChurchill 3 ай бұрын
I actually meant to say that the ampersand is the unary operator. Equal sign is binary operator
@h3ll0_w0rID
@h3ll0_w0rID 3 ай бұрын
@@DaveChurchill Oh I see. I assumed equal because I havent seen the ampersand called an operator. Thanks for clearing that up.
@F00dstamp96
@F00dstamp96 Ай бұрын
I lol'd when you said that C++ for windows is a nightmare. It really is.
@blackcitadel37
@blackcitadel37 Ай бұрын
for me the true gate to hell in C++ is called template metaprogramming.
@Retrotakoo
@Retrotakoo 2 ай бұрын
Personal Timestamps October 9 - 0:00 / 34:45 / 1:11:15.
@Back2Game01
@Back2Game01 24 күн бұрын
hello proffesor, i finished the lecture but i wanted to ask you if i need any prior knowllege before i continue, since you said ( you are 4rth year something you should understand this ) and how can i apply my understanding on this since i don't have accses to materials.
@sirsneedster
@sirsneedster 2 ай бұрын
how do make a vim macro like that? that's awesome
@RonaldAnthon
@RonaldAnthon Ай бұрын
I am a truly curious being, I am dying to see how that macro is built in vim.
@insadeyt
@insadeyt 3 ай бұрын
I love u 😭 i ve been watching ur videos and i just wanted u to know..
@alexanderskusnov5119
@alexanderskusnov5119 3 ай бұрын
getAvg function should return float type, not int.
@MrSomethingdark
@MrSomethingdark Ай бұрын
The Hank Hill voice when that array printout listed all those garbage values
@abraham7966
@abraham7966 2 ай бұрын
Setting up C++ compiler on Windows is a "god damn nightmare". I laughed at this!! Because, it is true just like trying to do software development in general on Windows. Dang, I love the package managers on Linux and Mac and the many other features we enjoy when developing on them. (not to mention terminal)
@toby9999
@toby9999 Ай бұрын
Use the community version of MS Visual Studio. It's super easy to set up. Just install it, and you're ready to go. It's more powerful than any IDE on Linux. I've been using VS for 28 years. Wouldn't touch anything else. Personally, I find Windows way easier to use than Linux. I hate the Linux terminal. There is too much reliance on the terminal in Linux. I also dislike the Linux way of installing software. And while I'm on the topic, I hate importing anything coded on Linux into Windows. Too many of the Linux open-source projects rely on CMake and other archaic approaches
@WokwithLan
@WokwithLan 3 ай бұрын
Nice. I also tackeled this on my channel.
@ImmigrantB1
@ImmigrantB1 3 ай бұрын
I want to learn how to write simulation software (not just for games). Is COMP 4300 the best course for me or should I look for something else?
@DaveChurchill
@DaveChurchill 3 ай бұрын
This is a game programming course which involves some rudimentary physics code but nothing I'd call simulation worthy. Check out Coding Adventures on Sebastian Lague's channel
@szymoniak75
@szymoniak75 3 ай бұрын
jesse we have to program c++
@DaveChurchill
@DaveChurchill 3 ай бұрын
can't cook with java
@MrSomethingdark
@MrSomethingdark Ай бұрын
Can't do that Dave!
@nikolaitesla4267
@nikolaitesla4267 3 ай бұрын
Aww George looks immaculate! I hope he lands a big job and makes a AAA game soon 😄
@DaveChurchill
@DaveChurchill 3 ай бұрын
Unfortunately George passed away, but he is still an inspiration :)
@nikolaitesla4267
@nikolaitesla4267 3 ай бұрын
@@DaveChurchill Rest in peace George 🙏
@Bantam80
@Bantam80 3 ай бұрын
I agree that lack of expressivity in C++ is vastly overblown, but you can definitely write your student loading function in fewer lines of code in Python. For example: def loadFromFile(filename): with open(filename, 'r') as student_data: for line in student_data: first, last, student_id, avg = line.strip().split() addStudent(Student(first, last, student_id, avg)
@mhalton
@mhalton 3 ай бұрын
Only C is worthy of applause!
@toby9999
@toby9999 Ай бұрын
I often use C++ a bit like C, but with all of the extra good stuff available.
@rssszz7208
@rssszz7208 3 ай бұрын
IAM learning cpp and have printed 1000 page book still watching this video
@tx6723
@tx6723 3 ай бұрын
Could you make a 3D SfML videos
@DaveChurchill
@DaveChurchill 3 ай бұрын
SFML is a 2D graphics library only
@whyabadi
@whyabadi 3 ай бұрын
G++ = George++
@Honkfren
@Honkfren 3 ай бұрын
Justice for George 😴 53:35
@BB-ik7mv
@BB-ik7mv 3 ай бұрын
👍👍👍
@crystal2857
@crystal2857 2 ай бұрын
I haven't finished the whole video. It would be better if you did not mention any other languages when explaining C++. As someone completely new to programming it makes me think I should be learning a different language first in order to learn this programming language. Which makes it hard for me to get past the beginning of this video. Like language speaking classes teachers/professors do not typically reference any other language, at least most of the teachers I've had. Or if they do it's short simple and usually only once.
@DaveChurchill
@DaveChurchill 2 ай бұрын
This is part of a 4th year computer science course in which students have used other languages but not necessarily C++
@crystal2857
@crystal2857 2 ай бұрын
@@DaveChurchill oh ok that makes more sense now. thank you. sorry about my earlier comment.
@weiSane
@weiSane 3 ай бұрын
Ah c++ you messy language. I guess I will give you another go.
@toby9999
@toby9999 Ай бұрын
There are many languages as messy, if not more so. I find java and js messy.
@protektwar
@protektwar 3 ай бұрын
RAII - was invented by a Pirate :))
@alexanderskusnov5119
@alexanderskusnov5119 3 ай бұрын
It would be better not to use dark background for video.
@ahuramazda9202
@ahuramazda9202 3 ай бұрын
Java is neither a compiled language nor an interpreted language, but both.
@Mark-zk7uj
@Mark-zk7uj 3 ай бұрын
it's almost like these terms are only applicable to programs, not programming languages
@DaveChurchill
@DaveChurchill 3 ай бұрын
Java source code is compiled into byte code, which is run on the JVM. Some JVM implementations interpret the code, some JIT it to machine code. So it's definitely always compiled, just not to machine code in all cases.
@z4mbon
@z4mbon 3 ай бұрын
@IgorLisx
@IgorLisx 3 ай бұрын
32:50 - you lost me with Allman style. Never will accept that ugly style.
@DaveChurchill
@DaveChurchill 3 ай бұрын
I also thought this way until I tried it for a significant amount of time.
@IgorLisx
@IgorLisx 3 ай бұрын
@@DaveChurchill ehhh, not sure about that. Having 18 yrs. experience with Java, I became pretty strict with code style.
@ElPikacupacabra
@ElPikacupacabra 3 ай бұрын
Allman is the best.
@IgorLisx
@IgorLisx 3 ай бұрын
@@ElPikacupacabra never
COMP4300 - Game Programming - Lecture 01 - Course Introduction
1:12:48
Dave Churchill
Рет қаралды 14 М.
WHY did this C++ code FAIL?
38:10
The Cherno
Рет қаралды 298 М.
why rust libraries may never exist.
7:26
Low Level
Рет қаралды 288 М.
OpenAI's o1 just hacked the system
26:31
AI Search
Рет қаралды 235 М.
The Design of C++ , lecture by Bjarne Stroustrup
1:15:52
Computer History Museum
Рет қаралды 330 М.
Master C++ on Linux | Full Course
3:11:22
SavvyNik
Рет қаралды 28 М.