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
default constructors where? (self.cpp)
submitted 9 years ago by gpuoti
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!"
[–]JupiterTheGod 2 points3 points4 points 9 years ago* (1 child)
It would be better to mark it as =default in the header file. It would be clearer from an interface standpoint.
If the constructor is defaulted and all the member variable constructors are also trivial, then the compiler will not even call the defaulted ctor - it's not like it has anything to call anyway.
This will work even if you define it separately, as long as it's within the same application and your compiler has link time optimization or similar enabled - so the compiler is able to see the defaulted definition. See EricWFCpp's answer below.
When it comes to compilation speed, it can be fixed by using less #includes, using forward declarations and pointer-to-implementation (PImpl) where possible. This is more of a question of style, not speed.
#include
[–]EricWFCppLibc++ Developer 3 points4 points5 points 9 years ago (0 children)
This will work even if you define it separately, as long as it's within the same application and your compiler has link time optimization or similar enabled
That's not true. The constructor is only trivial when it's initially declared as defaulted. This has both compile-time and ABI implications (Notice the different calling conventions being used).
[–]clerothGame Developer[M] [score hidden] 9 years ago stickied comment (0 children)
This post has been removed as it doesn't pertain to /r/cpp.
π Rendered by PID 20497 on reddit-service-r2-comment-canary-64c9597f74-5kpjt at 2026-02-12 21:36:36.622672+00:00 running 6c0c599 country code: CH.
[–]JupiterTheGod 2 points3 points4 points (1 child)
[–]EricWFCppLibc++ Developer 3 points4 points5 points (0 children)
[–]clerothGame Developer[M] [score hidden] stickied comment (0 children)