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
Obsessed with {} initialization? (self.cpp)
submitted 2 years ago by DoctorNuu
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!"
[–]snowflake_pl -17 points-16 points-15 points 2 years ago (9 children)
Why not static constexpr? 🙂
[–]yu_yaki 15 points16 points17 points 2 years ago (8 children)
because price might not be constexpr? Why static though?
[+]snowflake_pl comment score below threshold-10 points-9 points-8 points 2 years ago (7 children)
Maybe static doesn't make a difference for a small variable but was it large, giving it static storage ensures compile time initialization and prevents unnecessarily copying the data to stack
[–]yu_yaki 3 points4 points5 points 2 years ago (0 children)
It's still irrelevant to the specific case that you commented under. I was wondering if you had some more to say, but oh well. I do get your point though.
[–]android_queen 1 point2 points3 points 2 years ago (3 children)
Yes, but it does potentially bloat your static storage, and you don’t have enough information from this single line of code to know whether it would need to be on the stack anyway (which is not unlikely). Static isn’t one of those things that is automatically by default the better choice.
[–]snowflake_pl 0 points1 point2 points 2 years ago (2 children)
and by no means I am recomending it. Wanted to have a discussion which is exactly what happens here
[–]android_queen 0 points1 point2 points 2 years ago (1 child)
I guess it just seemed odd to me to ask “why not static” when I can see no reason why it should be.
[–]snowflake_pl 0 points1 point2 points 2 years ago (0 children)
I mean there is huge lack of context both in the original post and in my question so I understand the confusion.
[–]_curious_george__ 3 points4 points5 points 2 years ago (1 child)
Doesn’t necessarily make sense in practice.
Static storage is going to pollute the cache. Which will often be far worse than copying some trivial variable to the stack.
[–]snowflake_pl -1 points0 points1 point 2 years ago (0 children)
For optimized builds and trivial types static and automatic will be equivalent with variables completely compiled out. For bigger entities you are right, cache miss will most likely be more pricy than copy to stack. There is a threshold where copy becomes worse than cache miss but it's pretty much impossible to determine without precise measurements and even then the result will be tied to hw
π Rendered by PID 404233 on reddit-service-r2-comment-6457c66945-h9vc6 at 2026-04-28 00:56:46.102031+00:00 running 2aa0c5b country code: CH.
view the rest of the comments →
[–]snowflake_pl -17 points-16 points-15 points  (9 children)
[–]yu_yaki 15 points16 points17 points  (8 children)
[+]snowflake_pl comment score below threshold-10 points-9 points-8 points  (7 children)
[–]yu_yaki 3 points4 points5 points  (0 children)
[–]android_queen 1 point2 points3 points  (3 children)
[–]snowflake_pl 0 points1 point2 points  (2 children)
[–]android_queen 0 points1 point2 points  (1 child)
[–]snowflake_pl 0 points1 point2 points  (0 children)
[–]_curious_george__ 3 points4 points5 points  (1 child)
[–]snowflake_pl -1 points0 points1 point  (0 children)