Да, конечно, вы можете!
Статические методы не передают неявный указатель this
и используются всякий раз, когда вам не нужно оперировать конкретным экземпляром этого класса / типа (например, изменять его члены).
Если вам нужно изменить конкретный экземпляр, вы должны использовать метод экземпляра.
Нет причины, по которой эти два типа методов не могут быть объявлены вместе в одном классе. Если вы используете C #, ознакомьтесь с некоторыми классами, определенными .NET Framework. Многие из них имеют как статические, так и экземплярные методы. Это даст вам представление о том, как их можно эффективно использовать.
В C ++ нет причин даже создавать «статический» класс (один со всеми статическими методами), как вы могли бы найти в C #. Лучшим подходом было бы поместить функции в пространство имен как свободные функции. Не все должно быть «объектом».