사이트에서이 코드를 찾으려고했으나 필요한 항목을 찾을 수 없습니다.
기본적으로 기본 생성자에서 템플릿 변수를 초기화하는 올바른 방법은 무엇인지 알아야합니다.
예 :초기화 목록 템플릿 변수
template<typename T>
class myClass{
T *arr; // no problem with this.
int size;
int capacity;
T def_value; // how do I initialize this template variable in the constructor?
내가 좋아하는 뭔가를 시도 :
myClass(): arr(0), size(0), capacity(0), def_value(0){};
을하지만, 예를 들어, 문자에 0
를 할당 할 수 있기 때문에 컴파일되지 않습니다 (내가 알고). def_value
을 올바르게 초기화하려면 어떻게해야합니까?
. 확실히'char'를'0'으로 초기화 할 수 있습니다. –
예, 제 잘못, 컴파일이되었지만 EXC_BAD_ACCESS (코드 = 1, 주소 = 0x0)가 있습니다. – user7337963
'arr'을 올바르게 초기화하지 않았기 때문에 그럴 가능성이 큽니다. –