> 백엔드 개발 > C++ > C 클래스에서 상수 정적 문자열 변수를 올바르게 초기화하는 방법은 무엇입니까?

C 클래스에서 상수 정적 문자열 변수를 올바르게 초기화하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-05 02:42:13
원래의
942명이 탐색했습니다.

How to Properly Initialize Constant Static String Variables in C   Classes?

C 클래스의 정적 변수 초기화

C에서 정적 클래스 변수는 클래스 정의 외부에서만 초기화할 수 있습니다. 그러나 이는 클래스 내에서 일정하게 유지되어야 하는 문자열 변수를 처리할 때 문제가 될 수 있습니다. 이 문제를 해결하기 위해 소스 파일의 클래스 외부에서 이러한 변수를 초기화할 수 있습니다.

// Inside the class header file (.h)
class Thing {
    static const string RE_ANY;
    static const string RE_ANY_RELUCTANT;
};

// In the source file (.cpp)
const string Thing::RE_ANY = "([^\n]*)";
const string Thing::RE_ANY_RELUCTANT = "([^\n]*?)";
로그인 후 복사

한 가지 중요한 참고 사항은 변수가 상수여야 하고 클래스 메서드에 의해 수정되어서는 안 되는 경우, 정적으로 만드는 대신 const 키워드를 사용하는 것이 좋습니다. 정적 변수는 클래스의 모든 인스턴스에서 공유되는 반면, const 변수는 const가 아닌 메소드로 계속 액세스할 수 있지만 수정할 수는 없습니다.

위 내용은 C 클래스에서 상수 정적 문자열 변수를 올바르게 초기화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿