Finally, X++ got support for the finally statement. It has exactly the same semantics as in C#. This means that you can now write:
The contents of the finally block is guaranteed to be executed - regardless of exceptions or transactions. It is typically used to clean up any usage of none-managed resources. And to make that construct even cleaner, you can use the using keyword for types implementing the
System.IDisposable interface.
try
{
}
catch
{
}
finally
{
}
{
}
catch
{
}
finally
{
}
System.IDisposable interface.
using(var myObject = new MyObject())
{
myObject.someMethod();
}
This is short hand for:{
myObject.someMethod();
}
var myObject = new MyObject();
try
{
myObject.someMethod();
}
finally
{
myObject.Dispose();
}
try
{
myObject.someMethod();
}
finally
{
myObject.Dispose();
}
One more thing…
Just like in C# the using statement can also be used to avoid providing fully qualified names when referencing .NET types. This means I can implement MyObject like this:using System;
class MyObject implements IDisposable
{
public void Dispose()
{
}
}
class MyObject implements IDisposable
{
public void Dispose()
{
}
}
No comments:
Post a Comment