Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

Möglicherweise eine "Fehler C2593: ' Operator << ' ist mehrdeutig" Fehlermeldung beim Versuch, eine Variable __int64 an den Operator Ostream übergeben <<

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.

Den englischen Originalartikel können Sie über folgenden Link abrufen: 168440
Problembeschreibung
Wenn Sie versuchen, eine __int64 Variable für dem Operator Ostream übergeben <<, erhalten Sie folgende Fehlermeldung:
Fehler C2593: ' Operator << ' ist mehrdeutig
Ursache
Es ist kein Operator << für __int64 Typ für Ostream-Klasse definiert.
Lösung
Definieren Sie eigene Version der Operator <<. Im folgenden Beispiel-Code-Abschnitt zeigt eine einfache Lösung für << Operator, der die Variable __int64 in Char konvertiert * eingeben und übergibt Sie der Ostream << Operator.
Status
Microsoft hat bestätigt, dass dies einen Fehler in den Microsoft-Produkten ist, die im Abschnitt "Gilt für" aufgeführt sind.

Dieses Problem wurde behoben in Microsoft Visual C++ .NET.
Weitere Informationen
Das folgende Beispielprogramm veranschaulicht, das Problem und Problemumgehung:
//Sample.cpp// Compiler Options : /GX//#define WORKAROUND   //Uncomment this line to workaround#include<iostream>using namespace std;#ifdef WORKAROUNDstd::ostream& operator<<(std::ostream& os, __int64 i ){    char buf[20];    sprintf(buf,"%I64d", i );    os << buf;    return os;}#endifint main(){__int64  i64;cout << i64 ;return 0;}				

Warnung: Dieser Artikel wurde automatisch übersetzt.

Eigenschaften

Artikelnummer: 168440 – Letzte Überarbeitung: 05/26/2005 21:44:31 – Revision: 3.0

The Standard C++ Library

  • kbmt kbbug kbcrt kberrmsg kbfix kbnoupdate KB168440 KbMtde
Feedback
=""> var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" y>">
did=1&t=">=4050&did=1&t=">p;t=">ocument.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> amp;t=">'" + (window.location.protocol) + "//c.microsoft.com/ms.js'><\/script>");