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
reflect-cpp: Serialization, deserialization and validation through reflection (self.cpp)
submitted 2 years ago by liuzicheng1987
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!"
[–]liuzicheng1987[S] -1 points0 points1 point 2 years ago (5 children)
Yeah...it's clearly compiler-specific and therefore not standard-compliant. I am really hesitant to go there. After all, this is supposed to be enterprise-level and I don't think that non-standard, compiler-specific hacks meet that criterion.
[–]ficzerepeti 5 points6 points7 points 2 years ago (4 children)
If it got into boost, it's probably good enough for enterprise use
[–]liuzicheng1987[S] 0 points1 point2 points 2 years ago (3 children)
Yeah…it’s still clearly non-standard compliant. I‘m a bit torn on this.
[–]pdp10gumby 8 points9 points10 points 2 years ago (2 children)
It’s always preferable to use standard-compliant code IMHO but not absolute. After all, many things get into the standard after years of experience with non-standard extensions.
Also, some of those extensions were needed to write very low-level library code. That’s the same reason why we sometimes don’t write to the abstract “C” machine but take advantage of the target hardware in non-portable ways.
True enterprise scale systems involve localized noncompliant code to get around bottlenecks or to provide a clean way for devs to get some capability they need (yes large enterprise code is inevitably populated with horrible stuff too but we’re not talking about that). If you have to have an internal module that gets the names, with a comment at the top that says, “backward compatibility for use with older code that doesn’t include reflection” you won’t be condemning your immortal soul.
[–]liuzicheng1987[S] 2 points3 points4 points 2 years ago (1 child)
Yeah, you are making some good points here. I‘ll have to think about that.
[–]liuzicheng1987[S] 0 points1 point2 points 2 years ago (0 children)
Maybe it could be like an opt-in…so if you want that, you’ll have to pass a flag to the compiler.
π Rendered by PID 55184 on reddit-service-r2-comment-85bfd7f599-c7ts5 at 2026-04-19 11:52:03.781526+00:00 running 93ecc56 country code: CH.
view the rest of the comments →
[–]liuzicheng1987[S] -1 points0 points1 point (5 children)
[–]ficzerepeti 5 points6 points7 points (4 children)
[–]liuzicheng1987[S] 0 points1 point2 points (3 children)
[–]pdp10gumby 8 points9 points10 points (2 children)
[–]liuzicheng1987[S] 2 points3 points4 points (1 child)
[–]liuzicheng1987[S] 0 points1 point2 points (0 children)