Very minor nitpick, but struct as part of a variable definition is redundant in C++ except when there's naming ambiguity (e.g. `struct stat` vs `stat` function).