프로젝트의 여러 파일에 필요한 하드웨어 정의가있는 변수 (typedef struct)가 있습니다. extern
을 사용하는 것보다 더 우아한 방법이 있습니까?여러 파일에 구조체 사용
0
A
답변
1
싱글 톤과 같은 것이므로 getInstance 메소드를 구현할 수 있습니다.
struct BAR_ *getBarInstance(void)
{
static struct BAR_ instance; /* = getInitializedBar() */
return &instance;
}
2
main()에 구조체를 선언하고 구조체가 전역 변수가되는 것을 피하기 위해 구조체가 필요한 다양한 함수에 전달하는 것이 좋습니다. 그냥 헤더에 구조체가 있습니다.
이 접근법의 장점은 다음과 같습니다. 기능을 테스트하는 것이 더 쉬워 짐 - 모의 객체를 전달하여 다양한 상태를 시뮬레이션 할 수 있습니다. 구조체가 사용되는 곳을 더 명확하게 해줍니다. 인수로 인수를 사용하는 함수 만 사용하십시오.
헤더 파일을 사용하고 있지 않습니까? – user694733