В статье
C# Proxy Source Code for X++ Classes есть такой текст :
Цитата:
Every X++ method is marked either virtual, override, or new in the C# proxy.
```
Suppose in X++ you have a class DerivedClass that extends X++ class BaseClass. In their C# proxies, the methods would be decorated as follows:
- int BaseClass.method22() – virtual
- int method333() – virtual
- int DerivedClass.method22() – override
- int64 method333() – new
- void Derived.method4444(bool b) – virtual
Но при попытке реализовать пример, в котором в базовом классе функция возвращает int, а в наследнике эта же функция возвращает int64, выдаётся ошибка компилятора :
X++:
The method override must be declared with the same return type as the base method.
Пытаюсь понять - зачем Microsoft в статье указал заведомо невозможную ситуацию ?
Может в каких-то версиях Ax2012 в наследнике можно перекрыть функцию и вернуть отличающийся от родительской функции тип ?