성적표 프로그램 종료 시 "Debug Assertion Failed"오류
2010-09-29
|
by viiiin
3996
안녕하세요. 책 잘 보고 있습니다. ^^
성적표 프로젝트를 열심히 따라했는데 문제가 하나 생겨서 질문드립니다.
프로그램을 실행한 후, 곧바로 q를 입력해서 종료했을 때는 문제가 없는데,
학생 성적을 추가하고 종료하게 되면 종료가 되긴 하지만 오류가 발생합니다.
-------------------------------------------<오류 내용>------
[Microsoft Visual C++ Debug Library]
Debug Assertion Failed!
Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse)
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
-------------------------------------------------------------
(* 참고로 Visual Studio 2008을 사용하였습니다.)
혹시 "students.cpp" 파일 내용 중 학생을 추가하는 함수에서 객체를 동적으로 할당해주는 곳에서 문제가 있지 않나요?
-------------------------------------------------------------
bool Students::AddStudent(bool genereal)
{
Student* std = NULL;
try
{
if (genereal)
std = new Student(NumberOfStudent + 1);
else
std = new EngStudent(NumberOfStudent + 1);
...
}
catch (...)
{
delete std;
std = NULL;
throw;
}
return true;
}
-------------------------------------------------------------
해결이 잘 안되네요. ㅜㅜ