SA-MP Forums Archive
[Ajuda] Funзгo e parвmetros - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Funзгo e parвmetros (/showthread.php?tid=417101)



Funзгo e parвmetros - retsaoremo - 19.02.2013

Olб meus queridos,
Fiz uma funзгo da seguinte sintaxe:
Код:
Function(param1[], Float:param2, Float:param3, Float:param4, Float:param5)
Mas assim, nem sempre que eu for executar ela precisarб informar todos os parвmetros, entenderam ?
Por exemplo:
(Chamei um dialog onde tinha que escrever uma string)
pawn Код:
Function(inputtext);
Neste caso dб o seguinte erro: "number of arguments does not match definition"
Й possнvel executar uma funзгo sem informar todos os parвmetros ?


Re: Funзгo e parвmetros - Joao Pedro - 19.02.2013

й sу vocк deixar argumentos padrхes. Exemplo

function(nome, idade = 0, telefone = 0);

Quando eu for chamar, so serei obrigado a por o nome, os outros caso nгo informado terгo os valores que coloquei.


Re: Funзгo e parвmetros - ViniBorn - 19.02.2013

Vocк pode usar #pragma unused, ou fazer da seguinte forma

pawn Код:
Function(param1[], Float:param2 = 0.0, Float:param3 = 0.0, Float:param4 = 0.0, Float:param5 = 0.0)



Re: Funзгo e parвmetros - retsaoremo - 19.02.2013

Eu defini o valor 0.0 para os parвmetros e retirou o erro.
Mas se eu chamara essa funзгo definindo os valores dos parвmetros que eu defini para 0.0 , o valor vai substituir o 0.0 nй ?

E como seria o uso do #pragma unused nesta situaзгo ?


Re: Funзгo e parвmetros - ViniBorn - 19.02.2013

Ao adicionar = 0.0 nesse caso, vocк define 0.0 como valor padrгo, mas caso vocк forneзa outro valor ao chamar essa funзгo, o valor padrгo й substituido...

#pragma unused param2
#pragma unused param3
#pragma unused param4
#pragma unused param5


O outro jeito й mais prбtico


Re: Funзгo e parвmetros - retsaoremo - 19.02.2013

Aproveitando o tуpico.
Se eu precisar informar um valor inteiro no primeiro argumento, o vetor, como no exemplo:
pawn Код:
new val = strval(inputtext);
Function(val);
Como eu usaria o valor inteiro dentro da funзгo ?

OBS: Aparece o erro "argument type mismatch (argument 1)" na linha "Function(val)"


Re: Funзгo e parвmetros - Joao Pedro - 19.02.2013

Na funзгo vocк fala que o primeiro valor serб uma string, entгo sу se vocк converter int para str, mas nesse caso, й sу tirar o strval


Re: Funзгo e parвmetros - retsaoremo - 19.02.2013

Quote:
Originally Posted by Joao Pedro
Посмотреть сообщение
Na funзгo vocк fala que o primeiro valor serб uma string, entгo sу se vocк converter int para str, mas nesse caso, й sу tirar o strval
Nгo entendi muito bem... Mas criei outro parвmetro inteiro pra num ficar convertendo e tal.

Obrigado а todos que se importaram e ajudaram.