C에서 번역 단위 내의 정적 키워드는 기호의 가시성을 결정합니다. 그러나 n3092에서는 네임스페이스 범위의 객체에 대한 사용이 더 이상 사용되지 않았으며 n3225에서는 더 이상 사용되지 않음이 제거되었습니다.
신기하게도 이 변경 사항에 대한 문서는 제한되어 있습니다. 이 문서에서는 그 뒤에 있는 이유를 자세히 설명합니다.
C 표준 핵심 언어 결함 보고 및 승인된 문제의 개정 94, 1012 미만. 더 이상 사용되지 않는 Static에는 다음과 같이 명시되어 있습니다.
Although 7.3.1.1 [namespace.unnamed] states that the use of the static keyword for declaring variables in namespace scope is deprecated because the unnamed namespace provides a superior alternative, it is unlikely that the feature will be removed at any point in the foreseeable future.
본질적으로 static 지원 중단이 잘못되었습니다. 이름이 지정되지 않은 네임스페이스의 상용구 코드 없이도 내부 연결이 있는 함수나 객체를 선언하는 편리한 방법을 제공합니다.
한 가지 우려 사항은 C와의 호환성이었습니다. 그러나 C 프로그램을 C로 컴파일하는 것은 어려울 수 있으므로 이 요소는 큰 역할을 하지 않았을 수 있습니다.
static 키워드 지원 중단은 C에서 여전히 중요한 기능으로 남아 있다는 인식을 반영합니다. 명명되지 않은 네임스페이스는 대안을 제공하지만 static은 내부 연결을 통해 객체나 함수를 선언하기 위한 간결하고 직접적인 솔루션을 제공합니다.
위 내용은 C에서 static 키워드의 지원 중단이 취소된 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!