빈 기본 클래스 또는 구조 대입 연산자 데이터 손상 있다

기술 자료 번역 기술 자료 번역
기술 자료: 322127 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

현상

빈 기본 클래스 또는 구조체에 대해 컴파일러가 생성한 할당 연산자를 사용할 때 컴파일러는 코드를 데이터가 손상되었습니다 또는 클래스나 구조에 끝을 지나 쓸 수 있습니다.

원인

Visual C++ 컴파일러 버그로 인해 이 문제가 발생합니다.

해결 방법

지원되는 핫픽스를 이제 Microsoft에서 사용할 수 있지만 이 문서에서 설명하는 문제를 해결하기 위한 것일 뿐입니다. 이러한 특정 문제가 발생하는 시스템에만 적용해야. 이 핫픽스는 나중에 추가 테스트를 받아야 할 수도 있습니다. 따라서 이 문제의 영향이 심각하지 않으면 이 핫픽스가 포함된 다음 Visual Studio 6.0 서비스 팩이 나올 때까지 기다리는 것이 좋습니다.

이 문제를 즉시 해결하려면 수정 프로그램을 구하려면 Microsoft 기술 지원 서비스에 문의하십시오. Microsoft 고객기술지원부 전화 번호 및 지원 비용에 대한 정보를 전체 목록은 다음 Microsoft 웹 사이트를 방문하십시오.
http://support.microsoft.com/contactus/?ws=support
참고: Microsoft 기술 지원 전문가가 특정 업데이트로 문제를 해결할 수 있다고 판단하면 위치, 일반적으로 지원 호출에 발생하는 비용이 취소될 수 있습니다. 추가 지원 질문과 문제에는 특정 업데이트가 필요하지 않은 일반 지원 비용이 적용됩니다.

이 수정의 영어 버전은 파일 특성을 가집니다 (또는 이상) 다음 표에. 이러한 파일의 시간과 날짜는 UTC (협정 세계시) 로 나열됩니다. 파일 정보에서는 현지 시간으로 변환됩니다. UTC와 로컬 시간의 차이를 알려면 제어판의 날짜 및 시간 도구에서 표준 시간대 탭을 사용하십시오.
   Date         Time   Version         Size       File name
   --------------------------------------------------------------
   14-May-2002  10:40  12.0.9586.0     1,224,755  C1xx.dll
				

현재 상태

Microsoft 문제는 이 문서의 시작 부분에 나열한 제품에서 문제를 확인했습니다.

추가 정보

다음 예제 코드는 문제를 보여 주기 위해 사용할 수 있습니다. 참고 'a.m_n' 및 'b.m_n' 값은 다릅니다.
#include <stdio.h>

class CEmpty
{
public:
	CEmpty() throw()
	{
	}
	CEmpty( const CEmpty& ) throw()
	{
	}
	~CEmpty() throw()
	{
	}

	CEmpty get() const throw()
	{
		return( *this );
	}
};

class CDerived :
	public CEmpty  // Empty base class 
{
public:
	int m_n;
	CDerived& operator=( const CDerived& src ) throw()
	{
		m_n = src.m_n;
                // Overwrites low byte of m_n.
		CEmpty::operator=( src.get() ); 
		return( *this );
	}	
};

int main( int, char** )
{
	CDerived a;
	a.m_n = 0x01020304;
	CDerived b;
	b = a;
	printf( "0x%08x\n", b.m_n );
	return( 0 );
}
				

속성

기술 자료: 322127 - 마지막 검토: 2005년 10월 11일 화요일 - 수정: 1.3
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Visual C++ 6.0 서비스 팩 5
키워드:?
kbmt kbhotfixserver kbqfe kbbug kbfix kbqfe KB322127 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
더 이상 지원되지 않는 제품의 KB 내용에 대한 고지 사항
이 문서에서는 Microsoft에서 더 이상 지원하지 않는 제품에 대해 설명합니다. 따라서 이 문서는 "있는 그대로" 제공되며 업데이트되지 않습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com