首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#中的混叠技术?

C#中的混叠技术?
EN

Stack Overflow用户
提问于 2011-12-15 21:08:35
回答 2查看 276关注 0票数 12

假设我想使用假设的语法在C#中创建一个类型的别名:

代码语言:javascript
复制
 Currency = float;

然后我离开,创建几千个使用Currency类型的文件。

然后我意识到我更喜欢使用FCL类型:

代码语言:javascript
复制
 Currency = System.Single;

太好了,所有的代码都还能用。

...months后来..。

等等,我有一些奇怪的舍入错误。哦,这就是为什么,只有7位的精度。把这个数字减到15位数:

代码语言:javascript
复制
 Currency = System.Double;

...years后来..。

哦,浮点不是精确的;乘$0.0011/unit * 217,384 units暴露了使用浮点的一些限制。而会计师们对“会计违规行为”持反对态度。没问题:

代码语言:javascript
复制
Currency = System.Decimal;

...years后来..。

国际申请?货币代码。嗯。谢谢CodeProject

代码语言:javascript
复制
 Currency = Money;

...later...

哦,模式和实践。让我们混淆其中的一些代码:

代码语言:javascript
复制
 Currency = ICurrency;

在所有这些无稽之谈中,代码并没有被破坏。

我知道C#不支持这个级别的封装,也不支持我编写的语法。

但是,有谁能建议一种可以使用https://stackoverflow.com/questions/2302631/is-it-possible-to-declare-an-alias-with-net-type 什么 人民 一直 正在尝试 完成 (包括 我自己)的语法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-15 21:15:43

您可以像这样使用usingusing Currency = System.Single;,但是您必须在每个文件中都这样做。但是仍然更容易更改,而不是在整个应用程序中搜索单个。

票数 4
EN

Stack Overflow用户

发布于 2011-12-15 21:11:39

创建一个名为Currency的类,并实现(或委托)适当的操作符,然后在需要时更改用于在内部存储数据的类。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8526603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档