May 16,2008

Boo(12)-函數

函數定義方法很簡單,比較特別的就是不定個數變數。
// Say
def Say( s as string):
	print s

// 也是 Say
def Say( i as int):
	print i

// 不定個數
def Say(*args as (object)):
	print "len(args)=${len(args)}"
	for arg in args:
		print arg

// 求平方
def pow( i as int ) as int:
	return i*i

Say( "Hello world!" )
Say( 20 )
Say( pow( 2 ) )
Say( 1, "s", join(range(10)) )

a = (5, 8, 1, "end")
Say(*a)
as string、as int...等,其實都可以省略不寫,別忘了 Boo 會自動判定。
然後有看到 Say() 定義了三次嗎?是的,Boo 支援多載(overloading)。
不定個數變數,定義的方法比較特別,要加上 *,然後用法就當作是 enumerator 來用就行了。


Posted by elleryq at 樂多Roodo! │16:55 │回應(0)引用(0)Boo
樂多分類:網路/3C 共同主題:.Net/Mono 工具:加入樂多書籤編輯本文
Ads by Roodo! 

引用URL

http://cgi.blog.roodo.com/trackback/6033657