Ostrzeżenie kompilatora (poziom 4, wyłączony) C4365
"action" : konwersja z "type_1" na "type_2", niezgodność podpisanych/niepodpisanych
Na przykład próbowano przekonwertować niepodpisaną wartość na wartość podpisaną. Ten wzorzec może spowodować nieoczekiwane wyniki, gdy wartość źródłowa w czasie wykonywania nie znajduje się w zakresie typu docelowego. Na przykład wartość ujemna jest konwertowana na wartość podpisaną.
C4365 jest domyślnie wyłączony. Aby uzyskać więcej informacji, zobacz Ostrzeżenia kompilatora, które są domyślnie wyłączone.
Przykład
Poniższy przykład generuje kod C4365.
// C4365.cpp
// compile with: /W4
#pragma warning(default:4365)
int f(int) { return 0; }
void Test(size_t i) {}
int main() {
unsigned int n = 10;
int o = 10;
n++;
f(n); // C4365
f(o); // OK
Test( -19 ); // C4365
}
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla