自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

VB.NET遞歸過程應(yīng)用重點(diǎn)因素總結(jié)

開發(fā) 后端
VB.NET遞歸過程通常被開發(fā)人員理解為調(diào)用自身的過程。它的應(yīng)用并不是開發(fā)人員的必選方式,而且在使用時(shí)必須要注意iyixie必要因素,以免出錯(cuò)。

VB.NET編程語言是由微軟公司推出的一款***平臺(tái)技術(shù),其應(yīng)用機(jī)制與JAVA相同,而且其是一款真正的面向?qū)ο笳Z言,支持繼承性,它的使用方式靈活,開發(fā)人員可以將其與任一.NET語言進(jìn)行交互使用,提高編程效率。

VB.NET遞歸過程是指調(diào)用自身的過程。通常,這不是編寫 Visual Basic 代碼的最有效方法。

下面的過程使用遞歸計(jì)算其原始參數(shù)的階乘:

 

  1. Visual Basic  
  2. Function factorial
    (ByVal n As Integer) 
    As Integer  
  3. If n <= 1 Then  
  4. Return 1  
  5. Else  
  6. Return factorial
    (n - 1) * n  
  7. End If  
  8. End Function 

 

使用遞歸過程時(shí)的注意事項(xiàng)

限制條件。您在設(shè)計(jì)一個(gè)VB.NET遞歸過程時(shí),必須至少測(cè)試一個(gè)可以終止此遞歸的條件,并且還必須對(duì)在合理的遞歸調(diào)用次數(shù)內(nèi)未滿足此類條件的情況進(jìn)行處理。如果沒有一個(gè)在正常情況下可以滿足的條件,則過程將陷入執(zhí)行無限循環(huán)的高度危險(xiǎn)之中。#t#

內(nèi)存使用。應(yīng)用程序的局部變量所使用的空間有限。過程在每次調(diào)用它自身時(shí),都會(huì)占用更多的內(nèi)存空間以保存其局部變量的附加副本。如果這個(gè)進(jìn)程無限持續(xù)下去,最終會(huì)導(dǎo)致 StackOverflowException 錯(cuò)誤。

效率。幾乎在任何情況下都可以用循環(huán)替代遞歸。循環(huán)不會(huì)產(chǎn)生傳遞變量、初始化附加存儲(chǔ)空間和返回值所需的開銷,因此使用循環(huán)相對(duì)于使用遞歸調(diào)用可以大幅提高性能。

相互遞歸。如果兩個(gè)過程相互調(diào)用,可能會(huì)使性能變差,甚至產(chǎn)生無限循環(huán)。此類設(shè)計(jì)所產(chǎn)生的問題與單個(gè)遞歸過程所產(chǎn)生的問題相同,但更難檢測(cè)和調(diào)試。

調(diào)用時(shí)使用括號(hào)。當(dāng) Function 過程以遞歸方式調(diào)用它自身時(shí),您必須在過程名稱后加上括號(hào)(即使不存在參數(shù)列表)。否則,函數(shù)名就會(huì)被視為表示函數(shù)的返回值。

測(cè)試。在編寫VB.NET遞歸過程時(shí),應(yīng)非常細(xì)心地進(jìn)行測(cè)試,以確保它總是能滿足某些限制條件。您還應(yīng)該確保不會(huì)因?yàn)檫^多的遞歸調(diào)用而耗盡內(nèi)存。

責(zé)任編輯:曹凱 來源: wewill.cn
相關(guān)推薦

2010-01-21 17:31:15

VB.NET遞歸過程

2010-01-12 18:00:50

VB.NET界面

2010-01-15 15:39:14

VB.NET Sub過

2010-01-14 11:09:35

VB.NET文本框

2009-10-28 09:21:19

VB.NET技術(shù)

2010-01-12 16:39:26

VB.NET數(shù)據(jù)綁定

2009-11-03 10:51:33

VB.NET共享

2010-01-20 10:56:14

VB.NET Main

2010-01-15 18:50:25

VB.NET資源文件

2010-01-12 16:20:44

VB.NET類

2009-10-09 15:59:41

VB.NET對(duì)象

2009-11-10 13:08:13

VB.NET編程技巧

2010-01-20 17:54:13

VB.NET特殊字符

2009-11-02 13:14:18

VB.NET函數(shù)

2010-01-07 16:08:45

VB.NET子過程和函

2010-01-19 17:26:37

VB.NET創(chuàng)建過程

2009-11-02 10:36:16

VB.NET Sub

2010-01-22 10:27:02

VB.NET類型提升

2009-10-15 13:06:12

VB.NET Shar

2009-10-14 09:29:43

VB.NET加密
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)