except there is no ‘#’ operator in C or C++, so any interesting self-referential pattern breaks down here
# is two layers of ++, so the pattern is there. Whether that was originally intended or coincidence is another matter, but it works well enough that I suspect it was considered when picking names.