System::DoTryFinally‑metod

System::DoTryFinally(T&&, F&&) method

Den enda funktionen som efterliknar beteendet hos C#’s try[-catch]-finally‑sats. Vid översättning av C#’s try[-catch]-finally‑sats med översättarens alternativ finally_statement_as_lambda satt till true, översätts satsen till ett anrop av denna metod.

template<typename T,typename F> std::enable_if_t<Details::is_lambda_void_void<T>::value> System::DoTryFinally(T &&tryBlock, F &&finallyBlock)
ParameterBeskrivning
TTypen av funktionsobjektet som implementerar try[-catch]-delen av den try[-catch]-finally‑sats som emuleras
FTypen av funktionsobjektet som implementerar finally‑delen av den try[-catch]-finally‑sats som emuleras
ParameterTypBeskrivning
tryBlockT&&Funktionsobjektet vars kropp innehåller implementeringen av try[-catch]-delen av den try[-catch]-finally‑stamet som emuleras
finallyBlockF\&&Funktionsobjektet vars kropp innehåller implementeringen av finally-delen av try[-catch]-finally‑satsen som emuleras

Se även

System::DoTryFinally(T&&, F&&) method

Den enda funktionen som emulerar beteendet hos C#’s try[-catch]-finally‑sats. Vid översättning av C#’s try[-catch]-finally‑sats med översättarens alternativ finally_statement_as_lambda satt till true, översätts satsen till ett anrop av denna metod. Detta överlagrade alternativ hanterar fallet där returvärdet för funktionsobjektet som implementerar try[-catch]-delen av try[-catch]-finally‑satsen är bool.

template<typename T,typename F> std::enable_if_t<Details::is_lambda_void_boolref<T>::value, bool> System::DoTryFinally(T &&tryBlock, F &&finallyBlock)
ParameterBeskrivning
TTypen av funktionsobjektet som implementerar try[-catch]-delen av den try[-catch]-finally‑sats som emuleras
FTypen av funktionsobjektet som implementerar finally‑delen av den try[-catch]-finally‑sats som emuleras
ParameterTypBeskrivning
tryBlockT&&Funktionsobjektet vars kropp innehåller implementeringen av try[-catch]-delen av den try[-catch]-finally‑stamet som emuleras
finallyBlockF\&&Funktionsobjektet vars kropp innehåller implementeringen av finally-delen av try[-catch]-finally‑satsen som emuleras

Se även

System::DoTryFinally(T&&, F&&) method

Den enda funktionen som emulerar beteendet hos C#’s try[-catch]-finally‑sats. Vid översättning av C#’s try[-catch]-finally‑sats med översättarens alternativ finally_statement_as_lambda satt till true, översätts satsen till ett anrop av denna metod. Detta överlagrade alternativ hanterar fallet där returvärdet för funktionsobjektet som implementerar try[-catch]-delen av try[-catch]-finally‑satsen är bool&.

template<typename T,typename F> std::enable_if_t<Details::is_lambda_nonovoid_boolref<T>::value, std::optional<Details::ResultOf<T, bool &>>> System::DoTryFinally(T &&tryBlock, F &&finallyBlock)
ParameterBeskrivning
TTypen av funktionsobjektet som implementerar try[-catch]-delen av den try[-catch]-finally‑sats som emuleras
FTypen av funktionsobjektet som implementerar finally‑delen av den try[-catch]-finally‑sats som emuleras
ParameterTypBeskrivning
tryBlockT&&Funktionsobjektet vars kropp innehåller implementeringen av try[-catch]-delen av den try[-catch]-finally‑stamet som emuleras
finallyBlockF\&&Funktionsobjektet vars kropp innehåller implementeringen av finally-delen av try[-catch]-finally‑satsen som emuleras

Se även