Leeren Basisklasse oder Struktur Assignment Operator kann Daten beschädigt.

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

322127
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
Problembeschreibung
Wenn Sie einen vom Compiler generierte Zuweisungsoperator für einen leeren Basisklasse oder Struktur verwenden, möglicherweise der Code, den generiert der Compiler beschädigte Daten oder hinter dem Ende der Klasse oder Struktur zu schreiben.
Ursache
Dieses Problem tritt aufgrund eines Fehlers in der Visual C++-Compiler.
Lösung
Ein Hotfix zur Behebung dieses Problems ist inzwischen bei Microsoft erhältlich; dieser Hotfix wurde jedoch ausschließlich zur Behebung des in diesem Artikel beschriebenen Problems entwickelt. Deshalb sollten Sie nur Systeme aktualisieren, bei denen dieses spezielle Problem auftritt. Dieser Hotfix wird unter Umständen zu einem späteren Zeitpunkt weiteren Tests unterzogen. Wenn Sie durch dieses Problem nicht schwerwiegend betroffen sind, empfiehlt Microsoft daher, auf das nächste Microsoft Visual Studio 6.0 Service Pack warten, das diesen Hotfix enthält wird.

Wenn Sie das Problem sofort beheben möchten, wenden Sie sich an Microsoft Product Support Services, um das Update zu erhalten. Eine vollständige Liste mit Telefonnummern der Microsoft-Produktsupport und Informationen Supportkosten der folgenden Microsoft-Website: Hinweis : in speziellen Fällen Gebühren, die normalerweise für Support-Anrufe anfallen abgebrochen werden können, wenn eine Microsoft-Supportmitarbeiter feststellt, dass ein bestimmtes Update Ihr Problem behoben wird. Normale Servicegebühren werden jedoch für weitere Fragen und Problemlösungen erhoben, die mit dem fraglichen Update nicht in direktem Zusammenhang stehen.

Die englische Version dieses Updates weist die in der nachstehenden Tabelle aufgelisteten Dateiattribute (oder höher) auf. Die Datums- und Uhrzeitangaben für diese Dateien werden in Coordinated Universal Time () angegeben. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu ermitteln verwenden Sie die Registerkarte Zeitzone des Tools „ Datum und Uhrzeit in der Systemsteuerung.
   Date         Time   Version         Size       File name   --------------------------------------------------------------   14-May-2002  10:40  12.0.9586.0     1,224,755  C1xx.dll				

Status
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.
Weitere Informationen
Im folgenden Beispielcode können Sie das Problem veranschaulichen. Beachten Sie, dass die Werte von 'a.m_n' und 'b.m_n' unterscheiden.
#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 );}				

Warnung: Dieser Artikel wurde automatisch übersetzt

Eigenschaften

Artikelnummer: 322127 – Letzte Überarbeitung: 01/07/2015 15:27:41 – Revision: 1.3

  • Microsoft Visual C++ 6.0 Service Pack 5
  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbfix kbqfe KB322127 KbMtde
Feedback