Рассмотрим следующее:
namespace MyNamespace{
class MyClass {
public:
// Public area
private:
// Private area
protected:
// Protected area
}; /* Class */
} /* Namespace */
И учтите, что я хотел бы определить константу, специфичную для моего класса. Обычно я делаю следующее:
namespace MyNamespace{
// Constants
const int MYINT = 12;
const std::string MYSTR = std::string("Hello");
// Class definition
class MyClass {
public:
// Public area
private:
// Private area
protected:
// Protected area
}; /* Class */
} /* Namespace */
Таким образом я могу получить свою переменную следующим образом (где-то в моем коде):
MyNamespace::MYINT;
MyNamespace::MYSTR;
Это хорошая практика?
Учитывая, что константы можно обрабатывать несколькими способами (например, числовые константы часто обрабатываются с помощью enum
), каков наилучший подход к определению константы (связанной с классом, но может быть полезен и в другом месте? )?
Thankyou