본문 바로가기

IT/ASP

[ASP] function과 sub의 차이점


function(함수)은 일과처리와 함께 결과값 리턴이 필요할 때 사용합니다.

EX)
Function 함수명(Param)
        If Param = "a" Then
                str = "aaaa"
        Else
                str = "none"
        End If

        함수명 = str

End Function

-----------------------------------

Response.Write 함수명("a")

-----------------------------------

이처럼 사용하게 되면 값은 aaaa가 나온다.

sub(프로시저)의 경우는 일괄의 처리를 주로 하게 된다.

Sub 함수명(param)

        If param = "a" Then

                Response.Write "aaaa"

        Else

                Response.Write "none"

        End If

End Sub

-----------------------------------

Call Sub("a") 또는 Sub "a"

-----------------------------------

결과는 똑같이 aaaa가 나온다.

이 두개의 차이는 일괄의 처리 후 값을 리턴하는가? 아니면 일괄의 처리만을 하고 끝내는가? 이다.

function으로 선언 한다음 sub처럼 사용하면 즉 function에 리턴을 설정 하지 않았을 경우는 매우 좋지 않다.

에러가 나는 경우고 많으므로 꼭 자신의 사용 목적에 따라 function과 sub을 구분하여 사용하자

출처 : http://blog.naver.com/1121134