클래스에 불변량을 설정하기 위해 개인 정적 변수를 사용하는 것이 합리적입니까?불변 식을 설정하는 개인 정적 변수
예 :
class MovingObject
{
public:
//...Stuff
private:
// Invariants
static const double VELOCITY; // Moving objects always move at this velocity
// etc. for any other invariants
//...
}
---------------------------------------------------------------------------------
#include "MovingObject.h"
// Invariants
const double MovingObject::VELOCITY = 256.5;
//etc.
주제와 관련하여 흥미로운 기사입니다. http://www.stanford.edu/~pgbovine/programming-with-rep-invariants.htm – Anonymous
빠른 제안 - 귀하의 상수 이름을 모두 대문자로 만들지 마십시오. 규약에 따라 C 및 C++에서 모든 대문자 기호는 전 처리기 매크로에 사용되는 경향이 있습니다. 거의 모든 C/C++ 개발자는 대문자 C++ 심볼을 맹 글링하는 전처리기로 인한 컴파일 문제를 추적하기 위해 수많은 시간을 보냈습니다. –