多项选择题

A.函数是一段可重复使用的代码
B.函数可以有参数,也可以没有参数
C.函数可以返回值,也可以不返回值
D.函数必须在调用前声明