로딩
요청 처리 중입니다...

C++ 클래스에서 어설션을 접으십니까?

 C++ 클래스에서 어설션을 접으십니까?

따라서 클래스가 아닌 유형의 상황에서 다음과 같이 할 수 있습니다. int val_to_check = 0; int some_func(int param) { assert(val_to_check == 0); return param*param+param; } int main() { printf("Val: %i\n", some_func(rand())); return 0; } val_to_check 가 대신 const 로 선언되면 컴파일러에서 어설션을 접을 수 있습니다. 클래스의 멤버 변수로 비슷한 상수 접기가 가능한지 궁금합니다.

예를 들어 다음과 같이 할 수 있습니다. class Test { public: Test(int val) : val_(val) {} int some_func(int param) { assert(val_ == 0); return param*param+param; } private: const int val_; }; 따라서 클래스가 정의될 때 val_을 알아야 합니다....

# assert # c # constantfolding # fold