Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
I'm assuming you're asking about the left bit (aka binary) shift operators <<
It can be confusing at first, because the same operator is overloaded by e.g. stringstream to append things to the stream.
But originally the << and >> operators shift bits in an integer. Combined with & (and) operation, it is used here to extract 8 bit parts of the original 32 bit number.
Take a look here https://www.educative.io/answers/what-are-bit-shift-operations . And here https://www.tutorialspoint.com/cplusplus/cpp_operators.htm .
Given an
uint32_t
variableip
, you can extract four 8 bit chunks like that:To reverse it:
Hope that helps :)
I love it - a very concise and elegant solution. Quite easy to follow.
I love the use of initializer list for r, g and b. Lovely stuff :)
This is peak C++17 for me.