在C#中,我深入Objective-C中的代碼。我想知道,在C#中,用嵌套方法調用編寫代碼有什麼特別的好處或缺點,就性能,內存開銷和代碼可讀性而言?還是更容易閱讀和/或更容易遵循代碼,超越任何可能的速度或內存優勢(內存優勢部分可以是ObjC /非託管代碼說話)?C#嵌套方法調用的好處(和缺陷)
例(X,Y,Z,W,T,E & g分別所有INT的):
// non-nested
// someMethod returns an int
int b = someMethod(w,t,e);
int a = ((x + y) * b);
int c = a + (b * g);
return a + b + c;
// nested
// someMethod returns an int
return (((x + y) * someMethod(w,t,e)))
+ (someMethod(w,t,e)) + (((x + y) * someMethod(w,t,e))
+ (someMethod(w,t,e) * g));
它更容易跟隨非嵌套的代碼,但在嵌套的代碼你不必須實例化這三個變量;它也是一行代碼的四行代碼(儘管爲了便於閱讀,將一行分成三行)。我只是不確定哪種方式更好,或者更接受C#編程社區。任何有識之士將不勝感激。謝謝!
使用三個本地'int'變量很便宜。而且,第二個版本無論如何都會使用臨時變量。第二個版本非常難以遵循。第一個版本幾乎適用於所有重要方面。 – 2013-02-26 04:20:30