나는이 파일 공유 기능을 제공하는 라이브러리를 구현했다.실행되지 않는 라인이 변경되면 빌드가 중단됩니다!
이 이미 두 번 일어난 :
먼저, 문자열에있는 경우 - 다른 경로, 경로 만 실행되고 있는지,하지만 난 몇 후 다른 경로에 맞춤법 소프트웨어를 변경하는 경우 std 라이브러리에서 분이 충돌합니다. 나는 바뀌었던 줄이 변경되지 않았 음을 확인했다. 내가 변화를 되돌릴 때, 그것은 다시 멋지게 작동합니다.
두 번째로 표준 소프트웨어에서 out-of-array
표준 basic_string 소멸자를 다시 검사하여 소프트웨어가 충돌합니다.
나는 모든 것을했는데 모든 라이브러리는 _HAS_ITERATOR_DEBUGGING
과 일치했습니다.
4 시간 후에 문제가있는 파일이 TorrentFile.cpp/h
인 것을 발견했습니다.
함수를 추가하면 (호출되지는 않지만) 함수가 추가되면 프로그램이 해당 파일의 끝에 충돌하지만 해당 파일이 없으면 버그가 없습니다. 문제를 일으키는 코드 :
std::vector<TorrentFileListPacket> TorrentFile::GetFileMap()
{
std::vector<TorrentFileListPacket> vFiles;
return vFiles;
};
이 코드를 주석 처리하면 충돌이 사라집니다.
이것은 정말 나를 미치게합니다!
저는 8 년 동안 개발자였습니다. 전에 이런 것을 본 적이 없습니다!
추가 정보
내 메모리는 OK, 나는 도서관은 RasterBar에서 libTorrent
수있는 Windows 7에 SP1과 함께 비주얼 스튜디오 2010을 사용하고 있는데 그것은 높일 연결합니다. 소프트웨어가 MFC를 사용 중입니다.
C++에는 오버로드가 있으므로 새로 추가 된 함수가 호출되지 않는다고 가정 할 수 없습니다. –
함수 이름을 GetFileMap101010101010101010101010101로 설정하고 같은 충돌이 발생합니다! – bratao
** 모두 다시 빌드 ** – Erik