#ifndef HEADER_H
#define HEADER_H
//...
#endif //HEADER_H
is preferred to
#pragma once
Due to not having problems with linked files, duplicated files, or complex build setups including unity builds.
const void*
is preferred over
void const *
due to being less ambigious, and keeping the * with the type in more circumstances, even though it can make
void* const *
more ambigious, this is acceptable due to it's rarity.