Симптоми
Симптом 1
Когато се съставя проект на Microsoft Visual C++ с декларация на изброяване на конкретни изместване, може да получите грешка C2371, C2556 или C2511.
Причина 1
Този проблем възниква, защото компилатор неправилно анализира изброяване декларация код, който се появява в края на файла буфер [на файла изместване (4096 * n) -1].
Симптом 2
Съставяне на Visual C++ проект с виртуален разговор, връща обект и който свързва върнатата стойност с препратка. Имате /clr опция за поддръжка. В тази ситуация може да получите достъп до нарушаване изключение по време на изпълнение.
Причина 2
Този проблем възниква, защото неявно живот разширение на временно стойност, която е свързана с const препратка не работи, ако са налице следните условия:
-
Проектът се събират като /clr.
-
Временно стойността е връща стойността на извикване на виртуален или извикване на чрез функцията указател.
Решение
Информация за актуалната корекция
Поддържана актуална корекция се предлага от Microsoft. Тази актуална корекция обаче е предназначена да коригира само проблема, описан в тази статия. Прилагайте тази корекция само към системи, изпитващи този конкретен проблем.
Ако актуалната корекция е налична за изтегляне, има секция "Актуални корекции достъпни за теглене" в горната част на тази статия от базата знания. Ако тази секция не се появи, изпратете заявка за обслужване на клиенти на Microsoft и поддръжка, за да получите актуалната корекция.
Забележка: Ако възникнат допълнителни проблеми или проблеми, трябва да създадете отделна заявка за поддръжка. Обичайните такси за поддръжката ще важат за допълнителни въпроси и проблеми, които не спадат към конкретната актуална корекция. За пълен списък на телефонните номера на Microsoft за обслужване на клиенти и поддръжка или да създадете отделна заявка за поддръжка посетете следния уеб сайт на Microsoft:
http://support.microsoft.com/contactus/?ws=supportЗабележка: Формулярът "Актуални Download наличен" показва езиците, за които е налична актуалната корекция. Ако не виждате вашия език, това е защото актуалната корекция не е налична за този език.
Необходими условия:
За да приложите тази актуална корекция, трябва да имате Microsoft Visual Studio 2012 актуализация 4 инсталиран.
Изискване за рестартиране
Може да се наложи да рестартирате компютъра, след като инсталирате актуалната корекция ако засегнатите файлове не се използват по време на инсталирането. Препоръчително е да затворите всички компоненти на Visual Studio 2012, преди да инсталирате корекцията.
Статус
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, изброени в раздела "Отнася се за".