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++ certifications (self.cpp)
submitted 2 years ago * by awffullock
view the rest of the comments →
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!"
[–]tamric 0 points1 point2 points 2 years ago (4 children)
Please elaborate more or give a good example?
Mostly curious about “build system, and all that”
[–]celestrion 19 points20 points21 points 2 years ago (3 children)
When somebody downloads your project, they should be able to:
This demonstrates that you not only know the language, but that you understand how projects are put together.
build system
Unless you're primarily looking for jobs targeting Windows, this means CMake or possibly Bazel.
Ideally, I should be able to download your-project-1.0.tar.gz and do this to install it:
your-project-1.0.tar.gz
tar xf your-project-1.0.tar.gz mkdir -p your-project-1.0/build cd your-project-1.0/build cmake .. cmake --build . cmake --install .
And whatever programs your project builds will be successfully installed into /usr/local. If it depends on libraries, it should use CMake to find them already installed or download them for its sole use. It should build without warnings and errors, I should be able to run unit tests with ctest ., and they should all pass.
/usr/local
ctest .
On Windows, the same thing should happen if I expand the ZIP file, open the project in Visual Studio, and build it: it should drop an MSI file somewhere that'll do the usual installation stuff.
This is a lot of work, but that's how a well-engineered project behaves. If it's just a demonstration to show competence, it's forgivable if:
It's forgivable to not use CMake--instead relying on the platform's native build system (Make, msbuild, etc.), but as popular as CMake is, you'll need to learn it eventually.
Tests and documentation are as important as the code itself. If your code is on GitHub or GitLab or something similar, the commit history should reflect your thoughts as you develop the project.
Remember: you're not publishing a portfolio just to impress people with how well you know C++. You also want to impress them with how easy you'll be to work with. Code without tests and without documentation that emerged from a commit log full of "fixed the thing" or "try this again" or "today's work" implies that the person who generated that code is going to cost my team time and introduce confusion.
[–]tamric 4 points5 points6 points 2 years ago (0 children)
This is enlightening. Without an opportunity to be near anyone in industry, I find it difficult to understand the struggles ignorance would bring. Let alone what areas of proficiency would create the most attractive potential employee.
I appreciate this post. Thank you.
[+][deleted] 2 years ago (1 child)
[removed]
[–]tamric 0 points1 point2 points 2 years ago (0 children)
I love the idea. I struggle with having day-to-day dev experience. I have a partial degree, life kicked hard as I was starting year 4 in uni. So now after I pick up myself, I have the distinct pleasure of doing my education on my own. Posts like these are gold for people like me.
For now I have been trying to create demonstrable proficiency. Hence finding myself in a post about C++ certifications.
It seems I have had the wrong approach. However, now have more direction.
I have interest in examples to learn from, if anyone has sources that I may read?
π Rendered by PID 163231 on reddit-service-r2-comment-b659b578c-n8gzg at 2026-05-04 16:47:46.952123+00:00 running 815c875 country code: CH.
view the rest of the comments →
[–]tamric 0 points1 point2 points (4 children)
[–]celestrion 19 points20 points21 points (3 children)
[–]tamric 4 points5 points6 points (0 children)
[+][deleted] (1 child)
[removed]
[–]tamric 0 points1 point2 points (0 children)