728x90

에러 12

사용할 수 있는 적절한 기본 생성자가 없습니다.

발생 이유 기본 생성자가 없는 클래스의 객체를 기본 생성자로 생성하려고 하면 발생. 해결방법 객체는 여러가지 경우에 생성되며 이 때 특별히 다른 생성자를 지정하지 않는다면 기본 생성자를 필요로 한다. 즉, 기본 생성자를 쓰지 않으면 귀찮은 방법을 사용해야 한다는 뜻이다. 기본생성자를 만들면 안되는 상황이라면 모르겠지만 그렇지 않다면 기본생성자를 만들어두는게 편하다.

에러 모음 2018.07.02

동적할당의 한계치.

32Bit OS에서의 동적영역의 한계치는 4Giga-1Byte라고 한다. (1Byte는 항상 커널이 잡고 있다고 한다.)그렇다면 64Bit에서는 8Giga-1Byte일 것 같은데, 아니다. 똑같이 4Giga-1Byte이다.64Bit OS와 32Bit OS의 호환성을 위해서 늘리지 않은것일까?따로 더 쓸 수 있게 설정하는 방법이 있다고 하는 것도 같던데 아직 정확한 정보를 찾지 못했다. 4294967295byte = 4Giga-1Byte.아래의 코드에서 더 할당하려고 하면 뻑이난다. #include #include int main() { unsigned long int num; scanf_s("%u", &num); void* p = (void*)malloc(num+4294967295); //_msize(p..

중단점을 트리거 했습니다.

1.상황동적할당 한 것을 해제한 뒤 발생. 이유동적할당한 사이즈랑 해제한 사이즈가 다를 때 발생. (뭔가 짜증나는 오류는 간단하게나마 기록해두려고 함.) 2. 상황 포인터에 스택 메모리 주소를 넣고 해제함 이유free()로 해제하는 메모리는 heap공간이어야지 stack공간이면 안된다. 3.상황 함수의 인자를 포인터로 넘겨주고 전체 크기를 계산하려 할 때 이유포인터도 변수이므로 함수의 인자로 넘겨받은 주소도 새로운 곳에 저장되어 있기 떄문에 인수로 넘겨받은 포인터로는 전체 사이즈를 _msize함수로도 계산할 수 없다. 4. 상황동적 할당에 실패했을 때???

에러 모음 2018.06.08
반응형