请问下面这个变量m是什么类型?NOTIFICATION 是一个 struct
class EventSensor; EventSensor<NOTIFICATION> m;
认证高级PHP讲师
EventSensor가 클래스 템플릿인 경우(제공한 선언은 클래스 템플릿의 선언이 아닙니다). 변수 선언 EventSensor<NOTIFICATION> m;은 NOTIFICATION을 템플릿 매개변수로 특수화한 클래스의 인스턴스 m을 선언합니다. 이 클래스는 "EventSensor<NOTIFICATION>"이라고 합니다(이것이 C 표준에서 호출되는 방식입니다).
EventSensor<NOTIFICATION> m;
즉, 변수 m의 타입은 EventSensor<NOTIFICATION>입니다.
EventSensor<NOTIFICATION>
템플릿 인수가 제공되거나 함수 및 클래스(C 17 이후) 템플릿에 대해서만 추론되면 템플릿의 특수화를 얻기 위해 템플릿 매개변수로 대체됩니다. 즉, 특정 유형 또는 특정 함수 lvalue.
cppreference, template에서 인용
예, <NOTIFICATION>은 EventSensor 클래스 내부의 변수 유형이지만 클래스가 정의되고 NOTIFICATION으로 인스턴스화되면 일반적입니다.
m은 클래스 내부에서 사용되는 변수의 유형인 EventSensor<NOTIFICATION> 유형입니다.
mStrList는 ArrayList 유형입니다
의 s=mStrList.get(1) 요소는 문자열
EventSensor가 클래스 템플릿인 경우(제공한 선언은 클래스 템플릿의 선언이 아닙니다). 변수 선언
EventSensor<NOTIFICATION> m;
은 NOTIFICATION을 템플릿 매개변수로 특수화한 클래스의 인스턴스 m을 선언합니다. 이 클래스는 "EventSensor<NOTIFICATION>"이라고 합니다(이것이 C 표준에서 호출되는 방식입니다).즉, 변수 m의 타입은
EventSensor<NOTIFICATION>
입니다.cppreference, template에서 인용
예, <NOTIFICATION>은 EventSensor 클래스 내부의 변수 유형이지만 클래스가 정의되고 NOTIFICATION으로 인스턴스화되면 일반적입니다.
m은 클래스 내부에서 사용되는 변수의 유형인 EventSensor
으아아아<NOTIFICATION> 유형입니다.
mStrList는 ArrayList 유형입니다
의 s=mStrList.get(1) 요소는 문자열
유형입니다.