如何强制使 double x = 3 / 2; 返回 x = 1.5 而不需要添加 D 后缀或进行类型转换?是否有某种运算符重载或编译器选项可用?
令人惊讶的是,由于以下原因,添加类型转换或后缀并不简单:
业务用户需要编写和调试自己的公式。目前,C# 正在像 DSL(特定领域语言)一样使用,这些用户不是计算机科学工程师。因此,他们只知道如何编辑和创建几种类型的类来保存他们的“业务规则”,这些规则通常只是数学公式。
但他们总是认为 double x = 3 / 2; 将返回 x = 1.5,然而在 C# 中,它返回 1。
A. 他们总是忘记这一点,浪费时间调试,然后打电话给我寻求支持,我们会解决它。 B. 他们认为这非常丑陋,影响了业务规则的可读性。
正如您所知,DSL 需要更像自然语言。
是的。我们计划转向 Boo 并基于此构建 DSL,但这是将来的事情。
有没有简单的解决方案可以通过类外部的方式使 double x = 3 / 2; 返回 1.5,以便对用户不可见?
谢谢! Wayne
令人惊讶的是,由于以下原因,添加类型转换或后缀并不简单:
业务用户需要编写和调试自己的公式。目前,C# 正在像 DSL(特定领域语言)一样使用,这些用户不是计算机科学工程师。因此,他们只知道如何编辑和创建几种类型的类来保存他们的“业务规则”,这些规则通常只是数学公式。
但他们总是认为 double x = 3 / 2; 将返回 x = 1.5,然而在 C# 中,它返回 1。
A. 他们总是忘记这一点,浪费时间调试,然后打电话给我寻求支持,我们会解决它。 B. 他们认为这非常丑陋,影响了业务规则的可读性。
正如您所知,DSL 需要更像自然语言。
是的。我们计划转向 Boo 并基于此构建 DSL,但这是将来的事情。
有没有简单的解决方案可以通过类外部的方式使 double x = 3 / 2; 返回 1.5,以便对用户不可见?
谢谢! Wayne