I did a code that uses custom literals to allow indexing arrays with ordinals (1st, 2nd, 3rd), all at compile time. Additionally _st works only with 1, _nd only with 2, _rd only with 3. Zero and negative numbers are also not supported and fail compilation.
https://github.com/serpent7776/bits/blob/master/th.cpp/th.cpp
What’s the purpose of this? If you want to access an index in an array, isn’t using integers easier?
And if you want string literals, you can make a map and access the key that way as well
There’s no purpose really. It was more of “wonder if I can” and also nice way to learn custom literals.
Yeah it’s always a good way to learn things.
I only asked because I was genuinely curious if there was something I was missing about why you created this, that’s all.
Does it matter? OP had an itch. He scratched it, and shared it with the world.
The reason could be “I wonder if I can?”. That’s good enough.
Yeah, that was basically it.
“Does it matter?”
That was the point of my question, thanks for reiterating it
The point of your question seems to be “never try things a for fun”
Curmudgeonry sucks all the joy out of anything.
I never said that, please don’t assume that’s what I meant before asking.
deleted by creator
This sounds pretty interesting to do for funsies. I wonder if / how easy can it be extended to support i18n (eg.: “1_ro”, “2_do”, “3_ro”, “4_to” for Spanish).
Also thanks for not supporting negatvie integers. Trying to do that with UDLs over integers leads to rather annoying “funsies”, see StackOverflow and glados-418.
It should be easy to edit the existing code to add support for i18n, but there’s probably no way to make in generic (except for macros).
Sounds like a plan for a funsies long weekend, might send a PR if I advance with it enough.