Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W artykułach w tej sekcji opisano komunikaty ostrzegawcze kompilatora Microsoft C/C++ od C4200 do C4399.
Ważne
Kompilatory i narzędzia kompilacji programu Visual Studio mogą zgłaszać wiele rodzajów błędów i ostrzeżeń. Po znalezieniu błędu lub ostrzeżenia narzędzia kompilacji mogą podjąć założenia dotyczące intencji kodu i próby kontynuowania, dzięki czemu więcej problemów można zgłaszać w tym samym czasie. Jeśli narzędzia przyjmą błędne założenie, późniejsze błędy lub ostrzeżenia mogą nie mieć zastosowania do projektu. Kiedy naprawiasz problemy w projekcie, zawsze zaczynaj od pierwszego zgłoszonego błędu lub ostrzeżenia i często przebudowuj projekt. Jedna poprawka może rozwiązać wiele kolejnych błędów.
Aby uzyskać pomoc dotyczącą konkretnego komunikatu diagnostycznego w programie Visual Studio, wybierz go w oknie Dane wyjściowe i naciśnij F1 . Program Visual Studio otwiera stronę dokumentacji dla tego błędu, jeśli istnieje. Możesz również użyć narzędzia wyszukiwania w górnej części strony, aby znaleźć artykuły dotyczące określonych błędów lub ostrzeżeń. Możesz też przejrzeć listę błędów i ostrzeżeń według narzędzia i wpisać spis treści na tej stronie.
Uwaga
Nie każdy błąd lub ostrzeżenie programu Visual Studio nie jest udokumentowane. W wielu przypadkach komunikat diagnostyczny zawiera wszystkie dostępne informacje. Jeśli trafisz na tę stronę i pomyśl, że komunikat o błędzie lub ostrzeżeniu wymaga dodatkowego wyjaśnienia, daj nam znać, korzystając z przycisków opinii na tej stronie. Jeśli uważasz, że błąd lub ostrzeżenie jest nieprawidłowe lub znaleziono inny problem z zestawem narzędzi, zgłoś problem z produktem w witrynie Społeczność deweloperów. Możesz również wysłać opinię i wprowadzić usterki w środowisku IDE. W programie Visual Studio przejdź do paska menu i wybierz pozycję Pomoc > Wyślij opinię > Zgłoś problemlub prześlij sugestię przy użyciu Pomoc > Wyślij opinię > Zasugeruj funkcję. Niektóre tematy związane z błędami kompilatora zostały utworzone, jednak nie są generowane przez kompilator i teraz przekierowują na tę stronę.
Dodatkową pomoc dotyczącą błędów i ostrzeżeń można znaleźć na forach Microsoft Q&A C++. Możesz też wyszukać numer błędu lub ostrzeżenia w witrynie Społeczności deweloperów programu Visual Studio C++. Możesz również wyszukać w serwisie Stack Overflow, aby znaleźć rozwiązania.
Aby uzyskać linki do dodatkowych zasobów pomocy i społeczności, zobacz Visual C++ Help and Community (Pomoc i społeczność języka Visual C++).
Komunikaty ostrzegawcze
| Ostrzeżenie | Komunikat |
|---|---|
| Ostrzeżenie kompilatora (poziom 2 i poziom 4) C4200 | używane niestandardowe rozszerzenie: tablica o zerowym rozmiarze w strukturze/unii |
| Ostrzeżenie kompilatora (poziom 4) C4201 | używane niestandardowe rozszerzenie: beznazwajna struktura/unia |
| Ostrzeżenie kompilatora (poziom 4) C4202 | używane niestandardowe rozszerzenie: '...': nieprawidłowy parametr prototypu na liście nazw |
| Ostrzeżenie kompilatora C4203 | Używane jest rozszerzenie niestandardowe: unia ze zmienną składową statyczną. |
| Ostrzeżenie kompilatora (poziom 4) C4204 | używane niestandardowe rozszerzenie: inicjator agregacji niestałych |
| Ostrzeżenie kompilatora (poziom 4) C4205 | używane niestandardowe rozszerzenie: statyczna deklaracja funkcji w zakresie funkcji |
| Ostrzeżenie kompilatora (poziom 4) C4206 | używane niestandardowe rozszerzenie: jednostka tłumaczenia jest pusta |
| Ostrzeżenie kompilatora (poziom 4) C4207 | używane rozszerzenie niestandardowe: rozszerzona forma inicjalizatora |
| Ostrzeżenie kompilatora (poziom 4) C4208 | używane rozszerzenie niestandardowe: delete [exp] — exp ewaluowane, ale ignorowane |
| Ostrzeżenie kompilatora (poziom 4) C4210 | używane niestandardowe rozszerzenie: funkcja podana w zakresie pliku |
| Ostrzeżenie kompilatora (poziom 4) C4211 | użyto niestandardowego rozszerzenia: zewnętrzny redefiniowany jako statyczny |
| Ostrzeżenie kompilatora (poziom 4) C4212 | używane niestandardowe rozszerzenie: deklaracja funkcji używa trzech kropek |
| Ostrzeżenie kompilatora (poziom 4) C4213 | używane niestandardowe rozszerzenie: rzutowanie na wartość l |
| Ostrzeżenie kompilatora (poziom 4) C4214 | używane rozszerzenie niestandardowe: typy pól bitów inne niż int |
| Ostrzeżenie kompilatora (poziom 1) C4215 | używane niestandardowe rozszerzenie: długi typ zmiennoprzecinkowy |
| Ostrzeżenie kompilatora (poziom 1) C4216 | używane niestandardowe rozszerzenie: długi float |
| Ostrzeżenie kompilatora (poziom 4) C4218 | używane rozszerzenie niestandardowe: musi określać co najmniej klasę magazynu lub typ |
| Ostrzeżenie kompilatora (poziom 4) C4220 | varargs pasuje do pozostałych parametrów |
| Ostrzeżenie kompilatora (poziom 4) C4221 | używane jest niestandardowe rozszerzenie: "identifier": nie można zainicjować przy użyciu adresu zmiennej automatycznej "zmienna" |
| Ostrzeżenie kompilatora (poziom 1 i poziom 4) C4223 | Użyto niestandardowego rozszerzenia: tablica, która nie jest lvalue, została przekonwertowana na wskaźnik |
| Ostrzeżenie kompilatora (poziom 1) C4224 | używane niestandardowe rozszerzenie: parametr formalny "identyfikator" został wcześniej zdefiniowany jako typ |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4226 | używane niestandardowe rozszerzenie: "słowo kluczowe" jest przestarzałym słowem kluczowym |
| Ostrzeżenie kompilatora (poziom 1) C4227 | używany anachronizm: kwalifikatory w odwołaniu są ignorowane |
| Ostrzeżenie kompilatora (poziom 1) C4228 | niestandardowe rozszerzenie użyto: kwalifikatory po przecinku na liście deklaratorów są ignorowane |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4229 | używany anachronizm: modyfikatory danych są ignorowane |
| Ostrzeżenie kompilatora (poziom 1) C4230 | anachronizm użyty: modyfikatory/kwalifikatory przemieszane; kwalifikator pominięty |
| Ostrzeżenie kompilatora (poziom 4) C4232 | używane rozszerzenie niestandardowe: "identifier": adres dllimport "dllimport" nie jest statyczny, tożsamość nie jest gwarantowana |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4233 | używane niestandardowe rozszerzenie: słowo kluczowe obsługiwane tylko w języku C++, a nie C |
| Ostrzeżenie kompilatora (poziom 4, błąd) C4234 | Wykorzystano niestandardowe rozszerzenie: "słowo kluczowe" zarezerwowane do użycia w przyszłości. |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4235 | Jest używane niestandardowe rozszerzenie: "słowo kluczowe" słowo kluczowe nie jest obsługiwane w tej architekturze. |
| Ostrzeżenie kompilatora (poziom 1) C4237 | "keyword" nie jest jeszcze obsługiwane jako słowo kluczowe, ale jest zarezerwowane do użycia w przyszłości. |
| Ostrzeżenie kompilatora (poziom 4) C4238 | niestandardowe rozszerzenie w użyciu: klasa rvalue traktowana jako lvalue |
| Ostrzeżenie kompilatora (poziom 4) C4239 | używane rozszerzenie niestandardowe: "token": konwersja z "type1" na "type2" |
| Ostrzeżenie kompilatora (poziom 3) C4240 | używane rozszerzenie niestandardowe: dostęp do "classname" jest teraz zdefiniowany jako "access_specifier1", wcześniej został zdefiniowany jako "access_specifier2" |
| Ostrzeżenie kompilatora (poziom 3, wyłączony) C4242 | "identifier": konwersja z "type1" na "type2", możliwa utrata danych |
| Ostrzeżenie kompilatora (poziom 3) C4243 | conversion_type konwersja z "type1" na "type2" istnieje, ale jest niedostępna |
| Ostrzeżenie kompilatora (poziom 2) C4244 | "conversion_type": konwersja z "type1" na "type2", możliwa utrata danych |
| Ostrzeżenie kompilatora (poziom 2 i poziom 3 i poziom 4) C4244 | "conversion_type": konwersja z "type1" na "type2", możliwa utrata danych |
| Ostrzeżenie kompilatora (poziom 4) C4245 | "conversion_type": konwersja z "type1" na "type2", niezgodność ze znakiem/bez znaku |
| Ostrzeżenie kompilatora (poziom 2) C4250 | "classname": dziedziczy element "base_classname::member" za pośrednictwem dominacji |
| Ostrzeżenie kompilatora (poziom 2) C4251 | 'typ': 'type1' musi mieć interfejs DLL, aby być używanym przez klientów typu 'type2' |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4254 | "operator": konwersja z "type1":"field_bits" na "type2":"field_bits", możliwa utrata danych |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4255 | "function": brak prototypu funkcji: konwertowanie elementu "()" na "(void)" |
| Ostrzeżenie kompilatora (poziom 4) C4256 | "function": konstruktor klasy z bazami wirtualnymi ma wartość "..."; wywołania mogą nie być zgodne ze starszymi wersjami języka Visual C++ |
| Ostrzeżenie kompilatora (poziom 1) C4258 | "zmienna": definicja z pętli for jest ignorowana; używana jest definicja z otaczającego zakresu |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4263 | "function": funkcja składowa nie zastępuje żadnej funkcji wirtualnej składowej klasy bazowej |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4264 | "virtual_function": brak dostępnego przesłonięcia dla wirtualnej funkcji składowej w klasie bazowej "classname"; funkcja jest ukryta" |
| Ostrzeżenie kompilatora (poziom 3, wyłączony) C4265 | "classname": klasa ma funkcje wirtualne, ale jej nietrywialny destruktor nie jest wirtualny; wystąpienia tej klasy mogą nie być poprawnie zniszczone. |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4266 | "virtual_function": brak dostępnego przesłonięcia dla wirtualnej funkcji składowej w klasie bazowej "classname"; funkcja jest ukryta" |
| Ostrzeżenie kompilatora (poziom 3) C4267 | "zmienna": konwersja z "size_t" na "typ", możliwa utrata danych |
| Ostrzeżenie kompilatora (poziom 4) C4268 | "identifier": "const" statyczne/globalne dane zainicjowane za pomocą kompilatora wygenerowanego domyślnego konstruktora wypełnia obiekt zerami |
| Ostrzeżenie kompilatora (poziom 1) C4269 | "identifier": automatyczne dane typu const zainicjowane za pomocą domyślnego konstruktora wygenerowanego przez kompilator generują niewiarygodne wyniki" |
| Ostrzeżenie kompilatora (poziom 1) C4272 | "function": jest oznaczony jako __declspec(dllimport); musi określać natywną konwencję wywoływania podczas importowania funkcji. |
| Ostrzeżenie kompilatora (poziom 1) C4273 | "function": niespójne łącze DLL |
| Ostrzeżenie kompilatora (poziom 1) C4274 |
#ident Ignorowane; zobacz dokumentację #pragma comment(exestr, 'string') |
| Ostrzeżenie kompilatora (poziom 2) C4275 | bez interfejsu DLL classkey "identifier1" używany jako podstawa dla interfejsu DLL classkey "identifier2" |
| Ostrzeżenie kompilatora (poziom 1) C4276 | "function": brak podanego prototypu; nie przyjęto żadnych parametrów |
| Ostrzeżenie kompilatora (poziom 1) C4277 | Zaimportowany element "classname::member" istnieje zarówno jako składowa danych, jak i składowa funkcji; element członkowski danych ignorowany |
| Ostrzeżenie kompilatora (poziom 3 i poziom 4) C4278 | "identifier": identyfikator w bibliotece typów "library" jest już makro; użyj kwalifikatora 'zmień nazwę' |
| Ostrzeżenie kompilatora (poziom 3 i poziom 4) C4279 | "identifier": identyfikator w bibliotece typów "library" jest słowem kluczowym; użyj kwalifikatora "rename" |
| Ostrzeżenie kompilatora (poziom 3) C4280 | "operator ->" był samorekurencyjny poprzez typ "type" |
| Ostrzeżenie kompilatora (poziom 3) C4281 | Rekursja 'operator ->' wystąpiła poprzez typ 'type1' |
| Ostrzeżenie kompilatora (poziom 3) C4282 | następnie za pomocą typu "type2" |
| Ostrzeżenie kompilatora (poziom 3) C4283 | i za pomocą typu "typeN" |
| Ostrzeżenie kompilatora (poziom 2) C4285 | zwracany typ elementu "identifier::operator ->" jest rekursywny, jeśli jest stosowany przy użyciu notacji infiksowej |
| Ostrzeżenie kompilatora (poziom 1) C4286 | "derived_type": jest przechwytywane przez klasę bazową ('base_type') w wierszu line_number |
| Ostrzeżenie kompilatora (poziom 3, wyłączony) C4287 | "operator": niezgodność niepodpisanej/ujemnej stałej |
| Ostrzeżenie kompilatora (poziom 1) C4288 | niestandardowe rozszerzenie: "zmienna": zmienna sterująca pętli zadeklarowana w pętli for jest używana poza jej zakresem; powoduje konflikt z deklaracją w zewnętrznym zakresie |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4289 | niestandardowe użycie rozszerzenia: "zmienna": zmienna sterująca pętli zadeklarowana w pętli for jest używana poza jej zakresem |
| Ostrzeżenie kompilatora (poziom 3) C4290 | Specyfikacja wyjątku języka C++ ignorowana z wyjątkiem wskazania, że funkcja nie jest funkcją __declspec(nothrow) |
| Ostrzeżenie kompilatora (poziom 1) C4291 | "deklaracja": nie znaleziono pasującego operatora usuwania; pamięć nie zostanie zwolniona, jeśli inicjowanie zgłasza wyjątek |
| Ostrzeżenie kompilatora (poziom 1) C4293 | "shift_operator": liczba zmian ujemna lub zbyt duża, niezdefiniowane zachowanie |
| Ostrzeżenie kompilatora (poziom 4) C4295 | "tablica": tablica jest za mała, aby zawierać znak zerowy zakończenia |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4296 | "operator": wyrażenie jest zawsze boolean_value |
| Ostrzeżenie kompilatora (poziom 1) C4297 | "function": założono, że funkcja nie zgłasza wyjątku, ale jednak zgłasza. |
| Ostrzeżenie kompilatora (poziom 4) C4298 | "identifier": identyfikator w bibliotece typów "library" jest już makrem; zmiana nazwy na "__identifier" |
| Ostrzeżenie kompilatora (poziom 4) C4299 | "identifier": identyfikator w bibliotece typów "library" jest słowem kluczowym; zmieniono nazwę na "__identifier" |
| Ostrzeżenie kompilatora C4301 | 'derived_class::function': nadpisanie funkcji wirtualnej różni się tylko od "base_class::function" przez kwalifikator const/volatile |
| Ostrzeżenie kompilatora (poziom 2) C4302 | "konwersja': trunkowanie z 'type1' do 'type2'" |
| Ostrzeżenie kompilatora (nie emitowane) C4303 | Rzutowanie w stylu C z typu "type1" na "type2" jest przestarzałe, użyj static_cast, __try_cast lub dynamic_cast |
| Ostrzeżenie kompilatora (poziom 1 i poziom 2 i poziom 4) C4305 | "konwersja': trunkowanie z 'type1' do 'type2'" |
| Ostrzeżenie kompilatora (poziom 4) C4306 | "konwersja": konwersja z "type1" na "type2" o większym rozmiarze |
| Ostrzeżenie kompilatora (poziom 2) C4307 | "operator": przepełnienie stałej całkowitej ze znakiem |
| Ostrzeżenie kompilatora (poziom 2) C4308 | stała całkowita ujemna przekonwertowana na typ niepodpisany |
| Ostrzeżenie kompilatora (poziom 2) C4309 | "konwersja": truncacja wartości stałej |
| Ostrzeżenie kompilatora (poziom 4) C4310 | rzutowanie obcina wartość stałą |
| Ostrzeżenie kompilatora (poziom 1) C4311 | "zmienna": skrót wskaźnika ze "type1" do "type2" |
| Ostrzeżenie kompilatora (poziom 1) C4312 | "operation": konwersja z "type1" na "type2" o większym rozmiarze |
| Ostrzeżenie kompilatora (poziom 1) C4313 | "function%" w przypadku konfliktów ciągu formatu z argumentem argument_number typu "type" |
| Ostrzeżenie kompilatora C4314 | Oczekiwano, że parametr pragma będzie "32" lub "64". |
| Ostrzeżenie kompilatora (poziom 4) C4315 | "classname": wskaźnik "this" dla składowej "member" może nie być wyrównany zgodnie z oczekiwaniami przez konstruktor |
| Ostrzeżenie kompilatora (poziom 3) C4316 | "identifier": obiekt przydzielony na stercie może nie być wyrównany alignment" |
| Ostrzeżenie kompilatora (poziom 1) C4317 | "printf_family": za mało argumentów przekazanych dla ciągu formatu |
| Ostrzeżenie kompilatora C4318 | przekazywanie stałego zera jako długości do funkcji memset |
| Ostrzeżenie kompilatora (poziom 1) C4319 | "operator": zero rozszerzające "type1" na "type2" o większym rozmiarze |
| Ostrzeżenie kompilatora (poziom 1) C4321 | automatyczne generowanie identyfikatora IID dla interfejsu "interface" |
| Ostrzeżenie kompilatora (poziom 1) C4322 | automatyczne generowanie identyfikatora CLSID dla klasy "class" |
| Ostrzeżenie kompilatora (poziom 1) C4323 | ponowne użycie zarejestrowanego identyfikatora CLSID dla klasy "class" |
| Ostrzeżenie kompilatora (poziom 4) C4324 | "structname": struktura została wypełniona ze względu na specyfikator wyrównania |
| Ostrzeżenie kompilatora (poziom 1) C4325 | atrybuty dla sekcji standardowej "sekcja" ignorowane |
| Ostrzeżenie kompilatora (poziom 1) C4326 | zwracany typ funkcji powinien mieć wartość "type1" zamiast "type2" |
| Ostrzeżenie kompilatora C4327 | "przypisanie": wyrównanie pośrednie LHS ('wyrównanie1') jest większe niż RHS ('wyrównanie2') |
| Ostrzeżenie kompilatora C4328 | "function": wyrównanie pośrednie parametru formalnego parameter_number (parameter_alignment) jest większe niż rzeczywiste wyrównanie argumentu (argument_alignment) |
| Ostrzeżenie kompilatora (poziom 1) C4329 | Specyfikator justowania jest ignorowany w wyliczeniach. |
| Ostrzeżenie kompilatora (poziom 1) C4330 | atrybut "attribute" w sekcji "section" zignorowany |
| Ostrzeżenie kompilatora (poziom 1) C4333 | "shift_operator": przesunięcie w prawo przez zbyt dużą wartość, utrata danych |
| Ostrzeżenie kompilatora (poziom 3) C4334 | "shift_operator": wynik 32-bitowego przesunięcia niejawnie przekonwertowany na 64 bity (czy zamierzano przesunięcie 64-bitowe?) |
| Ostrzeżenie kompilatora (poziom 1) C4335 | Wykryto format pliku mac: przekonwertuj plik źródłowy na format DOS lub UNIX |
| Ostrzeżenie kompilatora (poziom 4) C4336 | Zaimportuj bibliotekę typu z odniesieniami krzyżowymi 'library1' przed zaimportowaniem 'library2'. |
| Ostrzeżenie kompilatora (poziom 4) C4337 | Automatycznie importowana jest biblioteka typu "library1" w "library2". |
| Ostrzeżenie kompilatora (poziom 4) C4338 | dyrektywa #pragma: standardowa sekcja "sekcja" jest używana |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4339 | "type": użycie niezdefiniowanego typu wykrytego w metadanych WinRT/CLR — użycie tego typu może prowadzić do wyjątku środowiska uruchomieniowego |
| Ostrzeżenie kompilatora (poziom 1) C4340 | "value": wartość opakowana z wartości dodatniej do ujemnej |
| Ostrzeżenie kompilatora (poziom 1, wyłączony, nie emitowany) C4342 | zmiana zachowania: "funkcja" została wywołana, ale operator członkowski został wywołany w poprzednich wersjach |
| Ostrzeżenie kompilatora (poziom 4) C4343 |
#pragma optimize("g",off)opcja przesłonięć /Og |
| Ostrzeżenie kompilatora (poziom 1) C4344 | zmiana zachowania: użycie jawnych argumentów szablonu powoduje wywołanie funkcji |
| Ostrzeżenie kompilatora (poziom 1) C4346 | "name": nazwa zależna nie jest typem |
| Ostrzeżenie kompilatora (poziom 1) C4348 | "type": ponowne zdefiniowanie domyślnego parametru: parametr parameter_number |
| Ostrzeżenie kompilatora (poziom 1, wyłączony, nie emitowany) C4350 | zmiana zachowania: "member1" wywołano zamiast "member2" |
| Ostrzeżenie kompilatora (poziom 1) C4352 | "identifier": funkcja wewnętrzna już zdefiniowana |
| Ostrzeżenie kompilatora (poziom 1) C4353 | używane niestandardowe rozszerzenie: stała 0 jako wyrażenie funkcji. Zamiast tego użyj funkcji "__noop" |
| Ostrzeżenie kompilatora (poziom 1 i poziom 4, wyłączone) C4355 | "to": używane na liście inicjalizacyjnej podstawowego członka |
| Ostrzeżenie kompilatora (poziom 2) C4356 | "element członkowski": statycznego elementu członkowskiego nie można zainicjować za pośrednictwem klasy pochodnej |
| Ostrzeżenie kompilatora (poziom 3) C4357 | argument tablicy param znaleziony na liście argumentów formalnych dla delegata "delegate" ignorowany podczas generowania "function" |
| Ostrzeżenie kompilatora (poziom 1) C4358 | "operator": zwracany typ połączonych delegatów nie jest "void"; zwrócona wartość jest niezdefiniowana |
| Ostrzeżenie kompilatora (poziom 1 i poziom 3) C4359 | "typ": specyfikator wyrównania jest mniejszy niż rzeczywiste wyrównanie (wyrównanie) i zostanie zignorowany. |
| Ostrzeżenie kompilatora (poziom 2) C4362 | "type": wyrównanie o wartości większej niż 8 bajtów nie jest obsługiwane przez CLR |
| Ostrzeżenie kompilatora (poziom 1) C4364 |
#using dla zestawu "assembly" wcześniej widocznego w lokalizacji (line_number) bez as_friend atrybutu; as_friend nie zastosowano |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4365 | Wyrażenie: konwersja z "type1" na "type2", niezgodność ze znakiem/bez znaku |
| Ostrzeżenie kompilatora (poziom 4) C4366 | Wynik jednoargumentowego operatora "operator" może być nieprzyzwoiszony |
| Ostrzeżenie kompilatora (poziom 3) C4367 | Konwersja z "type1" na "type2" może spowodować wyjątek niezgodności typu danych |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4368 | nie można zdefiniować "member" jako członka zarządzanego typu "type": typy mieszane nie są obsługiwane |
| Ostrzeżenie kompilatora (poziom 1) C4369 | "enumerator": wartość wyliczającego "value" nie może być reprezentowana jako "type", wartość to "new_value" |
| Ostrzeżenie kompilatora (poziom 4, już nie emitowany) C4370 | "classname": układ klasy został zmieniony z poprzedniej wersji kompilatora z powodu lepszego pakowania |
| Ostrzeżenie kompilatora (poziom 3, wyłączony) C4371 | "classname": układ klasy mógł ulec zmianie z poprzedniej wersji kompilatora z powodu lepszego pakowania składowej "składowa" |
| Ostrzeżenie kompilatora (poziom 4) C4373 | "function": funkcja wirtualna zastępuje "base_class_function", poprzednie wersje kompilatora nie przesłaniały, gdy parametry różnią się tylko kwalifikatorami const/volatile |
| Ostrzeżenie kompilatora (poziom 1) C4374 | "function1": metoda interfejsu nie zostanie zaimplementowana przez metodę inną niż wirtualna "function2" |
| Ostrzeżenie kompilatora (poziom 1) C4375 | metoda innej niż publiczna "method2" nie zastępuje metody "method2" |
| Ostrzeżenie kompilatora (poziom 1) C4376 | specyfikator dostępu "specyfikator1specyfikator2:" nie jest już obsługiwany: zamiast tego użyj "new_specifier:" |
| Ostrzeżenie kompilatora (poziom 1) C4377 | typy natywne są domyślnie prywatne; -d1PrivateNativeTypes jest przestarzały |
| Ostrzeżenie kompilatora (poziom 1) C4378 | Aby uzyskać wskaźniki funkcji do uruchamiania inicjatorów, rozważ System::ModuleHandle::ResolveMethodHandle. |
| Ostrzeżenie kompilatora (poziom 1) C4379 | Wersja "version_number" środowiska uruchomieniowego języka wspólnego nie jest obsługiwana przez ten kompilator. Użycie tej wersji może spowodować nieoczekiwane wyniki |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4380 | "class": Domyślny konstruktor nie może być przestarzały |
| Ostrzeżenie kompilatora (poziom 1) C4381 | "function1": metoda interfejsu nie zostanie zaimplementowana przez metodę inną niż publiczna "function2" |
| Ostrzeżenie kompilatora (poziom 1) C4382 | throwing 'type': typ z __clrcall destruktorem lub konstruktorem kopiowania można przechwycić tylko w /clr:pure module |
| Ostrzeżenie kompilatora (poziom 1) C4383 | "instance_dereference_operator": znaczenie wyłuszczenia uchwytu może ulec zmianie, gdy istnieje zdefiniowany przez użytkownika operator "instance_dereference_operator"; napisz operator jako funkcję statyczną, aby wyraźnie wskazać operand. |
| Ostrzeżenie kompilatora (poziom 1) C4384 |
#pragma "pragma_name" należy używać tylko w zakresie globalnym |
| Ostrzeżenie kompilatora (poziom 3) C4387 | "alternatywa": została rozważona |
| Ostrzeżenie kompilatora (poziom 4, wyłączony) C4388 | Wyrażenie: niezgodność ze znakiem/bez znaku |
| Ostrzeżenie kompilatora (poziom 4) C4389 | "operator": niezgodność podpisanych/niepodpisanych |
| Ostrzeżenie kompilatora (poziom 3) C4390 | ';': znaleziono puste kontrolowane wyrażenie; czy jest to zamierzony efekt? |
| Ostrzeżenie kompilatora (poziom 1) C4391 | "function_signature": niewłaściwy typ zwrotny dla funkcji wbudowanej, oczekiwano "typ" |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4392 | "function_signature": nieprawidłowa liczba argumentów funkcji wewnętrznej, oczekiwane argumenty "argument_count" |
| Ostrzeżenie kompilatora (poziom 1) C4393 | "zmienna": const nie ma wpływu na składową danych literału ; ignorowane |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4394 | 'function': symbol per-appdomain nie powinien być oznaczony za pomocą __declspec(dllexport) |
| Ostrzeżenie kompilatora (poziom 1) C4395 | "function": funkcja członkowska zostanie wywołana na kopii członkowskiego pola danych typu initonly "member" |
| Ostrzeżenie kompilatora (poziom 2) C4396 | "function": specyfikator wbudowany nie może być używany, gdy deklaracja znajomego odnosi się do specjalizacji szablonu funkcji |
| Ostrzeżenie kompilatora (poziom 1) C4397 |
DefaultCharSetAttribute jest ignorowany |
| Ostrzeżenie kompilatora (poziom 3) C4398 | "zmienna": obiekt globalny dla procesu może nie działać poprawnie z wieloma domenami aplikacji; rozważ użycie __declspec(appdomain) |
| Ostrzeżenie kompilatora (poziom 1, błąd) C4399 | "symbol": symbol procesu nie powinien być oznaczony za pomocą__declspec( polecenia dllimport) podczas kompilowania za pomocą polecenia/clr:pure |
Zobacz też
Błędy i ostrzeżenia kompilatora C/C++ i narzędzi kompilacji
Ostrzeżenia kompilatora C4000 — C5999