C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[72166] C++질문했던 사람입니다 해결했는데 다른 걸 추가하는 과정에서 더 오류가 나요 ㅠㅠ
씨쁠쁠도와주세여 [opple93] 3605 읽음    2014-12-22 10:40
C++저번에 질문했어요
답변 달아주신 분들 감사합니다ㅠㅠbb!!
보고 해결했는데 다른 것을 추가하는 과정에서 오류가 또 나서 염치불구하고 질문 드려요ㅠㅠ
txt파일로 올려놨는데 디버깅하면
_BLOCK_TYPE_IS_VALID pHead nBlockUse 이게 52번째 줄에서 뜬다고 나옵니다.
검색해보니 저 오류는 없는 값을 또 지우거나 할때 나타나는 것이라고 하더라구요.

그리고 81번째 줄을 보시면
class FemaleUser : public User
{
private:
    int rate;
public:
    FemaleUser(int ID,char * name, int hei, int wei, double kcal, int frate)
        : User(ID, name, hei, wei, kcal) , rate(frate)
    {}
    virtual void GetKcal(double kcal)
    {
        User::GetKcal(kcal);
        User::GetKcal(kcal*(rate/100.0));
    }
};
이 부분이 있는데요 제가 Male, Female나눠서 사용자의 정보를 받는 이유는
GetKcal 함수에서 여자는 80, 남자는 100퍼센트의 칼로리 소모량을 나타내주기 위함입니다.
그래서 가상 함수를 사용해 class를 만들었습니다.
그런데 소모 칼로리를 출력해줄때 보면 여성이 80퍼센트가 아니라 100퍼센트로 칼로리를 소모합니다.
왜 그러는 걸까요?ㅠㅠㅠㅠㅠ

_BLOCK_TYPE_IS_VALID pHead nBlockUse 이 오류는
void User::GetKcal(double kcal)
{
    calory+=kcal;
}

User::~User()
{
    delete [] cusName;
}

52번째 줄 부터 때문인 것 같습니다. 제 생각에는 user가 증가하는 만큼 삭제를 해줘야 하는데
증가하는 유저를 모두 삭제해주지 않아서 나타나는 것 같습니다.
도와주세요ㅠㅠ...

+ -

관련 글 리스트
72166 C++질문했던 사람입니다 해결했는데 다른 걸 추가하는 과정에서 더 오류가 나요 ㅠㅠ 씨쁠쁠도와주세여 3605 2014/12/22
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.