char * 배열을 삭제하고 싶습니다. 간단할까요? char * = new char[length];
다음 delete[] char;
을 사용 하시겠습니까?char 포인터 배열 삭제
또한이 연습에서는 std::string
을 사용할 수 없습니다. 여기
내 코드입니다 :HEAP CORRUPTION DETECTED: after Normal block (#137) 0x00794B50.
CRT detected that the application wrote to memory after end of heap buffer.
나는이 오류를 받고 있어요 지금
class myClass
{
char * myString;
...
public:
myClass::myClass(const char * tempStr);
};
myClass::myClass(const char * tempStr)
{
int length = strlen(tempStr);
myString = new char(length + 1); //+1 for null char
strcpy(myString, tempStr);
myString[length] = '\0';
delete[] myString; //error occurs here
}
, 나도 알아,이 코드는, 그러나 그것은 여전히 같은 오류를 완전히 비현실적 발생되는 I 우리가 이것을 해결할 수 있다면 그렇게 해결하려고 노력하고 있습니다. 나는 도중에 기분 좋게해야합니다. 내가 읽은 바로는 이것이 OK 일 것입니다. 나는이 운동을 위해 std::string
을 사용할 수 없다는 것을 반복 할 것이다.
오, 나 자신이 싫어. 매우 효과적이었습니다. 감사합니다. 최대한 빨리 답변을드립니다. – Jace