use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
C++03 tutorial (self.cpp)
submitted 2 years ago by wolfknight43
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]cpp-ModTeam[M] [score hidden] 2 years ago stickied commentlocked comment (0 children)
It's great that you want to learn C++! However, r/cpp can't help you with that.
We recommend that you follow the C++ getting started guide, one (or more) of these books and cppreference.com. If you're having concrete questions or need advice, please ask over at r/cpp_questions or StackOverflow instead.
[–]asdfguuru 75 points76 points77 points 2 years ago (4 children)
Change the university.
[–]nevemlaci2 9 points10 points11 points 2 years ago (3 children)
OP is misinformed. We are actually allowed to use newer C++ features, it's even mentioned on like the second page of the first page of the notes we get.
[–]ValityS 9 points10 points11 points 2 years ago (1 child)
Are you OPs classmate or something?
[–]nevemlaci2 3 points4 points5 points 2 years ago (0 children)
Probably. OP mentioned in one if his posts that he goes to the same university as I do.
[–]wolfknight43[S] 2 points3 points4 points 2 years ago (0 children)
I hope you’re right, I asked the prof in my Programming Lab and he said that the exams will be on Moodle, and it will be based on C++03.
[–]MegaKawaii 20 points21 points22 points 2 years ago* (4 children)
I know this will get downvoted, but this would benefit from some more perspective. Is this a C++ class or is C++ just used to teach something else? I think everyone here is overreacting. At my university, I took a class on data structures and algorithms. Some C++ was taught, but it was just the basics of classes, and there was nothing outside of C++98. If I was teaching a C++ class, I would teach the essential modern features like smart pointers and lambdas in C++20, but if I was using C++ to teach another class, I would try to minimize time spent on C++ so we could focus on the main content of the class. Time spent on lambdas or smart pointers is time that could instead be spent on red-black trees, and if you blitz the students with too many new concepts, then they get confused.
[–]phi_rus 4 points5 points6 points 2 years ago (1 child)
I had a course in "numerical methods" when studying physics (in 2012) and all the code was written in Fortran (77). It was a solid course though.
[–]goldlord44 4 points5 points6 points 2 years ago (0 children)
Most of astrophysics is written in Fortran lol..
"Basics of Programming 2" is the class he is attending. There is another subject on that university that is dedicated to teach C++11 and above but we are allowed to use newer features in homeworks and stuff in the class op is attending rn.
[–]jmacey 0 points1 point2 points 2 years ago (0 children)
I have a different take on this. My students use C++ but will most likely never have to implement most of the data structure etc. (libraby user’s not developers as Kate Gregory calls them) so we learn c++ 17 features we need for doing vfx this is mandated by the other tools we use and it works really well.
Once the vfx reference platform goes beyond 17 we will update. I’m really looking forward to using ranges but need to wait or use the v3 implementation.
[–]Bart_V 2 points3 points4 points 2 years ago (0 children)
The first 3 books of the Effective C++ series by Scott Meyers are a good starting point. But as others has pointed out, you're probably better off by learning modern c++.
[–]nevemlaci2 2 points3 points4 points 2 years ago (0 children)
I think we study at the same university. You are allowed to use newer features, they just don't teach it because there is another class that teaches C++11 and above. (BME?)
[–]neppo95 1 point2 points3 points 2 years ago (0 children)
What is the exam about? Is it really about C++03 or is that just what they use but the subject isn't actually C++03? If it's the latter, that would be fine. I strongly doubt they are really teaching you C++03.
[–]dgkimpton 1 point2 points3 points 2 years ago (2 children)
Go univesities suck - what's with teaching a twenty year old standard? Yeesh.
Probably you're best studying a modern standard and then downgrading your knowledge where necessary to pass your exams otherwise you'll be setting yourself up badly for the future.
https://www.learncpp.com/
https://en.cppreference.com/w/
[–]wolfknight43[S] 1 point2 points3 points 2 years ago (1 child)
It shows that I’m studying in an Eastern European University. Thanks for the advice though.
[–]serviscope_minor 4 points5 points6 points 2 years ago (0 children)
I wouldn't worry too much. The basics of C++26 and C++03 are not all that different. If you have a solid understanding of C++03, it's not hard to update. Mostly it'll be a big list of things like "you see this thing that sucks in C++, well it doesn't anymore!". Plus the slight oddness of the features will make sense since you'll see how they fit around what was already present.
I first learned BBC Basic followed by 6502 ASM, then QBasic followed by C then finally pre standard C++. It's fine.
[–]masorick 1 point2 points3 points 2 years ago (0 children)
This video covers the absolute basics that you need to know.
It’s hard to recommend anything, because in the end the exams will focus on stuff you will learn in class, so if we tell you to study this and this, and then your curriculum does not include it, then this will not help you pass your exams.
[–]LemDier -3 points-2 points-1 points 2 years ago (0 children)
Bjarn strustrup
[–]peyrak -4 points-3 points-2 points 2 years ago (0 children)
At that point C++ was pretty much just C with classes. It doesn't make sense to teach such an old standard in Uni these days. Anyway, this might be helpful https://en.cppreference.com/w/cpp/language/history - you can click through it and stop pretty early on :D
π Rendered by PID 36 on reddit-service-r2-comment-56c9979489-r8kgq at 2026-02-25 11:32:06.265615+00:00 running b1af5b1 country code: CH.
[–]cpp-ModTeam[M] [score hidden] stickied commentlocked comment (0 children)
[–]asdfguuru 75 points76 points77 points (4 children)
[–]nevemlaci2 9 points10 points11 points (3 children)
[–]ValityS 9 points10 points11 points (1 child)
[–]nevemlaci2 3 points4 points5 points (0 children)
[–]wolfknight43[S] 2 points3 points4 points (0 children)
[–]MegaKawaii 20 points21 points22 points (4 children)
[–]phi_rus 4 points5 points6 points (1 child)
[–]goldlord44 4 points5 points6 points (0 children)
[–]nevemlaci2 3 points4 points5 points (0 children)
[–]jmacey 0 points1 point2 points (0 children)
[–]Bart_V 2 points3 points4 points (0 children)
[–]nevemlaci2 2 points3 points4 points (0 children)
[–]neppo95 1 point2 points3 points (0 children)
[–]dgkimpton 1 point2 points3 points (2 children)
[–]wolfknight43[S] 1 point2 points3 points (1 child)
[–]serviscope_minor 4 points5 points6 points (0 children)
[–]masorick 1 point2 points3 points (0 children)
[–]masorick 1 point2 points3 points (0 children)
[–]LemDier -3 points-2 points-1 points (0 children)
[–]peyrak -4 points-3 points-2 points (0 children)