Поделиться через


Ошибка компилятора C3274

__finally/finally без соответствующего try

Обнаружен оператор __finally или finally без соответствующего try. Чтобы устранить эту ошибку, удалите оператор __finally или добавьте оператор try для __finally.

В следующем примере возникает ошибка C3274:

// C3274.cpp
// compile with: /clr
// C3274 expected
using namespace System;
int main() {
   try {
      try {
         throw gcnew ApplicationException();
      }
      catch(...) {
         Console::Error->WriteLine(L"Caught an exception");
      }
      finally {
         Console::WriteLine(L"In finally");
      }
   } finally {
      Console::WriteLine(L"In finally");
   }

   // Uncomment the following 3 lines to resolve.
   // try {
   //   throw gcnew ApplicationException();
   // }

   finally {
      Console::WriteLine(L"In finally");
   }
   Console::WriteLine(L"**FAIL**");
}