Can use namespaces for that
namespace foo {
int bar() { return 7; }
constexpr int fiz = 23;
}
void setup() {
Serial.begin(115200);
Serial.println(foo::bar() * foo::fiz);
}
void loop() {}
After typing foo:: IDE will even suggest bar and fiz
If there are no member fields, then no point in using class or struct. static member functions are useful for wrangling instances as a whole, but not if there are never any instances.