이 오류의 의미: "오류: 'type_name' 이전의 예상 지정자-qualifier-list"
셀프로세서 작업을 해왔고, 그 동안 셀프로세서를 보관할 구조물을 만들려고 노력중이야.spe_context_ptr_t
스레드 내에서 spe 컨텍스트를 실행하기 위해 사용될 것이며 스레드 내에서 스푸 컨텍스트로 전달될 다른 것에 대한 포인터를 보유할 것이다(현재 나는 그것을 그냥 일반적인 포인터로 만들려고 하고 있지만 실제로는 내가 정의한 다른 구조에 대한 포인터가 될 것이다).컴파일을 시도하면 다음과 같은 오류가 발생한다.
spu/../common.h:38: error: expected specifier-qualifier-list before 'spe_context_ptr_t'
// here is the offending line(s)
typedef struct _PTHREAD_BLOCK {
spe_context_ptr_t * context; // Error happens here
uintptr32_t args;
} PTHREAD_BLOCK;
컴파일러는 spe_context_ptr_t가 유형인지 모른다.이 코드를 컴파일할 때 적절한 typeedef가 적용되고 있는지 확인하십시오.적합한 헤더 파일을 포함하지 않은 경우.
나도 같은 에러메세지를 받았는데 해결방법이 달라.
컴파일러는 파일을 위에서 아래로 구문 분석한다.
다른 구조체에 사용하기 전에 구조체가 정의되어 있는지 확인하십시오.
typedef struct
{
char name[50];
wheel_t wheels[4]; //wrong, wheel_t is not defined yet
} car_t;
typedef struct
{
int weight;
} wheel_t;
iPhone 코코아 터치 프로젝트의 경우:
나는 이런 문제가 있었고 에릭 파라로의 코멘트 덕분에 그것을 해결할 수 있었다.나는 나의 다른 많은 수업에서 WSHelper.h 클래스를 수입하고 있었다.그러나 나는 또한 나의 WSHelper.h(Eric이 말한 것과 같은 원형)에 있는 같은 수업의 일부를 수입하고 있었다.그래서 이 문제를 해결하기 위해 나는 WSHelper.h 파일에서 WSHelper.m 파일로 가져오기를 이동시켰다. 어차피 .h 파일에는 필요하지 않았기 때문이다.
수입 루프를 가지고 왔지
---FILE B.h
#import "A.h"
@interface B{
A *a;
}
@end
---FILE A.h
#import "B.h"
@interface A{
}
@end
구조체 이름을 그렇게 지어야 한다.
typedef struct car_t {
char
wheel_t
} car_t;
나는 고간도의 픽스를 이용해서 이것을 정리할 수 있었지만, 수입품을 다른 곳으로 옮기는 대신 개별적으로 코멘트를 하고 앱을 만든 다음 그것들을 제거할 때까지 편집했다.
이 오류는 기본적으로 개체를 사용하기 전에 사용할 때 발생한다.
'IT이야기' 카테고리의 다른 글
문자열이 있는 문자열 및 문자(프린트f 포함) (0) | 2022.04.26 |
---|---|
Vue 및 Webpack 트리 흔들림, sideEffects 및 CSS: 로드 중인 사용되지 않는 구성 요소의 CSS (0) | 2022.04.26 |
특정일을 넘겨서 요일을 결정하는 방법? (0) | 2022.04.26 |
Vue.js ApoloClient 미들웨어를 재실행하려면 어떻게 해야 하는가? (0) | 2022.04.26 |
해결 방법 'Redirect가 CORS 정책에 의해 차단됨:'Access-Control-Allow-Origin' 헤더가 없으십니까? (0) | 2022.04.26 |