void FileManager::CloseFile(File * const file)
{
for (int i = 0; i < MAX_OPEN_FILES; ++i)
{
if ((_openFiles[i] == file) == true)
{
_openFiles[i] == NULL;
}
}
...
_openFiles은 파일 관리자의 개인 회원과 동일한 시험을 직접 실행 창에서 수행 할 때 파일 *의
내가 1의 결과를 얻을 단지 배열입니다!?!어떻게이 간단한 포인터 평등 테스트가 실패 할 수 있습니까?
EDIT == true가 순결 점검으로 추가되었습니다!
제안 사항 : 나는 당신이 정말로 더 진보 된 데이터 구조를 여기에 사용해야한다고 생각합니다. 어떤 종류의 해시는 함수가 호출 될 때마다 검색의 필요성을 막을 것이고, 나는 이것과 같은 "관리자"클래스에 다른 함수가 있다고 상상할 수 있습니다. 관리자 클래스는 많은 경우 코드 냄새의 무언가이기도합니다 ... – rmeador
클래스가 초기 단계에 있으며 해시가 목록에 있습니다! 그러나 그것이 나의 의견을 확인하는 것에 따라 제안에 감사드립니다. .. –