Use class without instance (like e.g. String)

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.

2 Likes