Guest Lulo Posted May 7, 2004 Report Share Posted May 7, 2004 Qual a diferença entre uma Sub e uma Function? Quote Link to comment Share on other sites More sharing options...
0 Promotor Advanced Posted May 7, 2004 Report Share Posted May 7, 2004 Função retorna um valor... Quote Link to comment Share on other sites More sharing options...
0 PiGmEu Posted May 7, 2004 Report Share Posted May 7, 2004 Função retorna um valor... Isso mesmo Promotor Advanced!! exemplo: Function somar(numero As Integer) As Integer Dim valor1 As Integer Dim valor2 As Integer valor1 = 10 valor2 = 20 somar = (valor1 + valor2) * numero 'aki eu to retornando um valor para a minha funcao soma End Function ai se eu fizer um botao e colocar assim: Private Sub Command1_Click() text1.Text = somar(3) 'aki ele vai chamar a funcao passando como parametro o numero 3, e depois ela retorna o valor da conta da Funcao End Sub já uma sub não pode voltar um valor! Acho q deu pra entender não é?? hihi Quote Link to comment Share on other sites More sharing options...
0 Chuck_NewBie Posted May 11, 2004 Report Share Posted May 11, 2004 Não necessáriamente..Uma função retorna um valor se você indica-la com o parenteses...Uma função pode também ser um procedimento(Sub)... o Exemplo mais simples disso é a Função MsgBox.. que se tiver parenteses retorna um valor indicando qual botão for pressionado...MsgBox como Sub:MsgBox "Olah mudo =]" --> Perceba que não possui parenteses... entaum não retornara nenhum valor..MsgBox como Function:if MsgBox("Sai?",vbYesNo)=vbYes Then End--> Agora perceba que ele teim q retornar um valor entaum coloca-se o parenteses...casos errados:MsgBox ("Ola mundo")MsgBox("Sai?",vbYesNo)Resp = MsgBox "Olah mundo"Resp = MsgBox"Sai?",vbYesNoVlw Quote Link to comment Share on other sites More sharing options...
0 Graymalkin Posted May 11, 2004 Report Share Posted May 11, 2004 Apesar de não concordar que uma função pode ser vista como uma sub quando o valor retornado não vai pra lugar algum (veja que ele é retornado, só não vai para algum lugar, diferentemente de uma sub que não retorna um valor), só tem uma observação a fazer:MsgBox ("Ola mundo")Não é errado. Apenas força a passagem do valor por referência, que no caso do primeiro argumento da função Msgbox() já é por referência mesmo.Abraços,Graymalkin Quote Link to comment Share on other sites More sharing options...
0 ppgsalomao Posted May 11, 2004 Report Share Posted May 11, 2004 Gente,Pelo menos da forma que aprendi, tem um certo desacordo com o dito acima !!A diferença do Procedimento (Sub) para uma Função é que uma função só pode retornar um valor e o procedimento não tem limite, ou seja, qualquer incluindo nenhum ! Quote Link to comment Share on other sites More sharing options...
0 Graymalkin Posted May 13, 2004 Report Share Posted May 13, 2004 Apesar de não concordar que uma função pode ser vista como uma sub quando o valor retornado não vai pra lugar algum (veja que ele é retornado, só não vai para algum lugar, diferentemente de uma sub que não retorna um valor), só tem uma observação a fazer:MsgBox ("Ola mundo")Não é errado. Apenas força a passagem do valor por referência, que no caso do primeiro argumento da função Msgbox() já é por referência mesmo.Abraços,Graymalkin Ops... só corrigindo. Na verdade o valor entre parênteses força a passagem por valor e não por referência.ppgsalomao: Gente,Pelo menos da forma que aprendi, tem um certo desacordo com o dito acima !!A diferença do Procedimento (Sub) para uma Função é que uma função só pode retornar um valor e o procedimento não tem limite, ou seja, qualquer incluindo nenhum !Se pensarmos que passar um valor por referência e a alteração de seu conteúdo seja um "retorno" de valor, sim, realmente. No entanto, não concordo que passar um valor por referência e alterá-lo in-loco seja retornar um valor, no sentido estrito da palavra.Abraços,Graymalkin Quote Link to comment Share on other sites More sharing options...
0 William Rodrigues Posted May 24, 2004 Report Share Posted May 24, 2004 Concordo com o último post do brother GraymalkinAcho que está bem explicadinho...Abraços,William Rodrigues Quote Link to comment Share on other sites More sharing options...
Question
Guest Lulo
Qual a diferença entre uma Sub e uma Function?
Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.