<C# primer>的这句话怎样理解??
中文版本168页
interface的实现得靠class或struct得继承才能完成。struct不适合本例(Fibonacci数),因为我不希望在应用程序中得那些“对运行时间十分敏感”得地点创建并控制一大堆Fibonacci object。因此,我将Fibonacci声明为class。
其中:
不希望在应用程序中得那些“对运行时间十分敏感”得地点创建并控制一大堆Fibonacci object
怎么理解,struct的效率吗?
问题点数:20、回复次数:9Top
1 楼micropentium6(小笨|曾经的美好)回复于 2004-07-04 11:33:14 得分 0
去找英文原版看,翻译的很多地方都是垃圾!Top
2 楼zedan(kk)回复于 2004-07-04 12:56:58 得分 0
没错找英文原版看吧?照写出来的看,好像都不是很顺哦Top
3 楼whmjw(明年今日十年之后)回复于 2004-07-04 14:02:25 得分 0
翻译的不好,:),让人理解的狗屁不通Top
4 楼baryjim(吃饭-睡觉-打豆豆)回复于 2004-07-04 18:49:53 得分 0
我想哭,难道真的能差到这么远???Top
5 楼lightnings(lightning)回复于 2004-07-04 19:03:59 得分 0
那么能不能把英文原版贴出来对照一下就可以了。Top
6 楼baryjim(吃饭-睡觉-打豆豆)回复于 2004-07-05 08:51:53 得分 0
An interface is implemented by either class or struct inheritance. A struct isn't
appropriate in this case: We don't expect to be creating and manipulating lots of Fibonacci objects in time-critical portions of the application. We'll declare Fibonacci as a class then.Because we do not expect it to be subsequently derived from, we'll declare it to be sealed as well:
public sealed class Fibonacci : INumericSequence {}
我看了,翻译没有问题,只是理解上有问题,大家说说自己得理解吧Top
7 楼hdt(倦怠)回复于 2004-07-05 09:12:13 得分 16
stract 创于栈上是值类型,而class创于堆上是引用类型。
所以说在本例(Fibonacci数),class 比 struce 效率要高。
Top
8 楼cysoft(我用皮筋打你家玻璃)回复于 2004-07-05 09:18:59 得分 4
implemented这里最好不要理解成实现,使用或者是依靠,比较符合理解的习惯,上面说的对,这里的翻译是没有问题的,但是不符合理解习惯
我是这么理解的:
接口的使用需要通过 class 或者 struct 的继承来实现。Top
9 楼baryjim(吃饭-睡觉-打豆豆)回复于 2004-07-05 10:07:17 得分 0
to hdt(千金散近还复来,一给就是200分)
struct{int i;} 在栈上,那么说明到程序超过使用区间,他会自动消亡
class{public: int i;} 在堆上,那么说明由垃圾回收器来处理?
还是不太明白,请明示
to cysoft:
管闲是理解,翻译都差不多
Top




