Ну, если очень хочется, то забей штук 20 параметров типа anyType и анализируй их содержимое в начале метода
X++:
void MyMethod(
anyType par1 = "",
anyType par2 = "",
anyType par3 = "",
anyType par4 = "",
anyType par5 = "",
anyType par6 = "",
...
)
{
if (PrmIsDefault(par1) == 0)
{
switch (typeOf(par1))
{
case types::INTEGER :
case types::REAL :
case types::ENUM :
default :
}
}
...
}
Анализ переданного типа параметра можно вынести в отдельный метод или функцию внутри метода
Только через контейнер или объект - проще.