Ich bin gerade über eine Visual Studio (C++) Lösung auf einen anderen Computer umgestiegen, habe alle Verzeichnisse und Einstellungen soweit ich sehen kann eingerichtet, und habe ein Säubern/Rebuild auf der Lösung. Ich bekomme den Fehler oben auf einer Reihe von OBJs beim Kompilieren, nicht sicher, was ich dagegen tun soll._iterator_debug_level Wert '0' stimmt nicht mit Wert '2' überein
Antwort
Es scheint, dass Sie Objektdateien mischen, die mit unterschiedlichen Einstellungen erstellt wurden. Versuchen Sie, eine vollständige saubere Neuerstellung durchzuführen, und überprüfen Sie alle Projektdateieinstellungen, um sicherzustellen, dass das _ITERATOR_DEBUG_LEVEL-Makro identisch ist (z. B. mischen Sie keine Debug- und Release-Build-Objekte).
Das Mischen von Binärdateien (Objektdateien) ist ein Grund; ein anderes (was ich angetroffen habe) ist die falsche Definition des Makros _DEBUG
im Release-Build. _DEBUG
ist kein Standardmakro, sondern wird von Microsoft verwendet.
Nach dem .vcxproj -Dateien in Emacs Bearbeitung vertippt ich _DEBUG
statt NDEBUG
für die Freigabe, und genau die gleichen Build-Fehler aufgetreten.
bang on ...... definiert :) – Sandip
In einigen Fällen die Optionen in
Eigenschaften Mischen> Konfigurationseigenschaften> C/C++> Codegenerierung> Runtime Bibliothek
Zwischen Library (n) enthalten und aktuell Arbeitsprojekt kann dieses Problem verursachen.
Je nach Verwendung als /MD
oder /MT
oder /MDd
oder /MTd
einheitlich für alle Projekte festlegen.
Danke, es hat funktioniert. – lourencoccc
Ich fand (seltsam), dass _CRT_NON_CONFORMING_SWPRINTFS verursacht es. Wenn ich es entferne, bekomme ich nicht "_iterator_debug_level Wert '0' entspricht nicht Wert '2'", sondern die folgende Warnung:
Fehler 6 Fehler C4996: '_swprintf': swprintf wurde geändert, um zu entsprechen mit dem ISO C-Standard, Hinzufügen eines zusätzlichen Zeichenanzahlsparameters. Legen Sie _CRT_NON_CONFORMING_SWPRINTFS fest, um traditionelles Microsoft-SWprintf zu verwenden.
Ich habe versucht, dieses Problem für fünf Tage zu lösen. Der Point Cloud Library-Code (PCL-Code) wird erfolgreich im Debugmodus erstellt, schlägt jedoch im Freigabemodus fehl.
Ich habe meine Bibliothek mehrmals neu konfiguriert, aber es hat nicht geholfen. Ich fand das Problem war, dass die Release-Version _DEBUG erbte, also habe ich es unter Projekteigenschaften >> Präprozessor >> Prozessordefinitionen deaktiviert und es wurde gelöst.
- 1. # 1136 - Spaltenanzahl stimmt nicht mit Wert überein?
- 2. Verarbeitungstyp stimmt nicht überein
- 3. Parameteranzahl stimmt nicht überein
- 4. Lineare Regressionsvorhersage stimmt nicht mit Trainingsdaten überein
- 5. RewriteRule stimmt nicht überein?
- 6. Vektorberechnung stimmt nicht mit Ausgabe überein
- 7. TargetType stimmt nicht mit Elementtyp überein
- 8. Parameteranzahl stimmt nicht mit Invoke überein?
- 9. TLS-Version stimmt nicht überein (?)
- 10. PerformanceCounterCategory.GetCategories stimmt nicht mit Perfmon überein
- 11. Warum stimmt^\ s * $ nicht mit MULTILINE überein?
- 12. Dropdown-Kombinationsfeld stimmt nicht überein
- 13. Muster stimmt mit Ungleichheit überein
- 14. Typ stimmt nicht mit abstrakten Typen überein
- 15. Convert.ToBoolean nicht mit Wert "0"
- 16. Bildschirmauflösung stimmt nicht überein Bildschirmgrenzen
- 17. RewriteCond Erfassungsgruppe stimmt nicht überein
- 18. Libtool Version stimmt nicht überein
- 19. Typenklasse Deklarationstyp stimmt nicht überein
- 20. SSRS Parameter stimmt nicht überein
- 21. XSLT stimmt nicht mit bestimmten Attributen überein
- 22. \ s + stimmt nicht mit allen Leerzeichen überein?
- 23. IllegalArgumentException: Argumenttyp stimmt nicht mit Hibernate überein
- 24. Regex stimmt nicht mit leerer Zeichenfolge überein
- 25. ContractFilter stimmt nicht mit dem EndpointDispatcher überein?
- 26. Referenzprojekt stimmt nicht mit dem echten überein
- 27. "Parfor": Subskribiertes Zuweisungsmaß stimmt nicht überein
- 28. Paramiko Fehler: Größe stimmt nicht überein Put
- 29. Adler-32-Ausgabe stimmt nicht mit den erwarteten Werten überein
- 30. PropertyInfo.GetValue() "Objekt stimmt nicht mit dem Zieltyp überein."
Aus irgendeinem Grund hatte eines meiner Projekte _SECURE_SCL = 1 im Freigabemodus definiert, und dies verursachte den Linker-Fehler. – Gyuri
Eine andere Möglichkeit ist eine Projekt/Quelldatei, die _HAS_ITERATOR_DEBUGGING – korbes