Browse our Products
Aspose.Tasks for C++ 21.11 Release Notes
All Changes
Key | Summary | Issue Type |
---|---|---|
TASKSNET-10377 | System.OverflowException: TimeSpan overflowed because the duration is too long | Bug |
TASKSNET-10369 | Fix Exception on loading the P6 XML file | Bug |
TASKSNET-3611 | Fix formula parsing exceptions when opening the specific file | Bug |
Special notes for C++ users
Enumerators
Now the CODEPORTING_CURRENT_RETTYPE macro is used as the return type of the get_Current method. Now it is just a stub that do not modify its argument type, but in one of upcoming releases, it will return a reference instead of a shared pointer copy in the collections that store reference types or strings.
Generic ‘foreach’ enumeration translation rules
Now it is avoided to pre-declare the ‘foreach’ iterator before the cycle, as it was before. New optimized code looks like this:
auto x_enumerator = y->GetEnumerator();
while (x_enumerator->MoveNext())
{
auto&& x = x_enumerator->getCurrent();
// ...
}
Because of upcoming changes, you should avoid iterators pre-declaration. if you have a reason not to use range-based for to iterate over collections, please use template above instead.
For detailed information, please also refer to CodePorting.Native Cs2Cpp 21.11 release notes