FUNCTION hb_SendMail( ... ) pontinhos ???

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

FUNCTION hb_SendMail( ... ) pontinhos ???

Mensagem por susviela@bol.com.br »

Estava vendo esse fonte e me deparei com esse trecho de código, e fiquei na dúvida. *Para que servem esses três pontinhos na chamada da função ?*

Seriam número de parâmetros variáveis ? ( pelo menos foi isso que me pareceu, nunca usei esse recurso )

Código: Selecionar todos

#if defined( HB_LEGACY_LEVEL4 )
FUNCTION hb_SendMail( ... )
   RETURN tip_MailSend( ... )
#endif

Alias pegando carona nesse post: hb_SendMail( ) está funcionando no Harbour 3.2 ?

.
Estava vendo uns posts aqui no fórum, e me parece que só estava funcionando no 3.4 !!!
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

FUNCTION hb_SendMail( ... ) pontinhos ???

Mensagem por Itamar M. Lins Jr. »

Ola!
Isso evita de ficar passando os parâmetros.
MyFunc(...)
Poderia ser, MyFunc(pN1,pC1,pD1,pL1)
Os pontinhos abre precedência para qualquer quantidade de parâmetros.
Use as funções hb_aparam(), pcount(), hb_pvalue() para saber ver a ordem etc, que vem os parâmetros.

Código: Selecionar todos

unction Main(...)
    LOCAL argc
    LOCAL argv := hb_aParams()
    LOCAL cArg

    // CALCULATE ARGC
    argc := len(argv)

    // PRINT THE ARGUMENTS
    ? "There were ", argc, " arguments total, as shown below:"
    FOR EACH cArg IN argv
       ? "Argument ", cArg:__enumIndex(), " is ", cArg
    NEXT
    ? "No more arguments."

RETURN Nil
Normal.

Código: Selecionar todos

function Test( nValue, cString )
if PCount() == 2
? hb_PValue( 1 ), nValue
? hb_PValue( 2 ), cString
endif
return ni
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

FUNCTION hb_SendMail( ... ) pontinhos ???

Mensagem por Itamar M. Lins Jr. »

Ola!
Terminando de ler a thread... eis que vem o Przmek e manda isso!

Código: Selecionar todos

  FUNCTION Main(...)
      LOCAL cArg
      ? "There were ", PCOUNT(), " arguments total, as shown below:"
      FOR EACH cArg IN { ... }

         ? "Argument ", cArg:__enumIndex(), " is ", cArg
      NEXT
      ? "No more arguments."
   RETURN NIL
In Harbour ... can be used as operator, i.e.

aParams := { ... }

or:

? "All arguments:", ...

or even as array indexes, i.e.:

func ArrayGet( aValue, ... )
return aValue[ ... ]

[...]

? ArrayGet( aValue, 2, 3, 1 )

best regards,
Przemek
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

FUNCTION hb_SendMail( ... ) pontinhos ???

Mensagem por susviela@bol.com.br »

Que beleza .. muito bom, cada dia melhor esse Harbour.
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

FUNCTION hb_SendMail( ... ) pontinhos ???

Mensagem por bencz »

Isso ja é algo antigo na programação
De uma olhada: https://en.wikipedia.org/wiki/Variadic_function
Imagem
Avatar do usuário
Nascimento
Usuário Nível 4
Usuário Nível 4
Mensagens: 763
Registrado em: 19 Jul 2008 12:11
Localização: OLINDA-PE

FUNCTION hb_SendMail( ... ) pontinhos ???

Mensagem por Nascimento »

sim muito usado na linguagem C
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Responder