全部: 我想构造一个函数。返回值的类型可能有两种可能:数字或字符串。起初,我以为可以使用重载函数(参见代码)。但这个函数必须有不同类型的输入。所以下面的代码会出错。有没有可行且简单的方法来解决这个问题?
Number tmp(String a)
{
if (a == "a") return 1
}
String tmp(String a)
{
if (a == "b") return "a"
}
Result(tmp("a"))
Result(tmp("b"))
最佳答案
Mike 使用对象的答案是一个很好的答案,但如果您只对“简单”数据类型返回感兴趣,我宁愿建议您使用 TagGroup 对象作为返回值。您基本上可以在 TagGroup 中存储任何信息,甚至可以向其中添加一些结构。而且:即使是单个标签也可以写为 f.e.数字但以字符串形式读出,反之亦然。 (它将执行“典型”类型转换或数字<>字符串解释。)
关于dm-script - 双类型返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76888592/