Sempre estranhei isso no VB6, e vi também em vários fontes do Harbour.
Segundo o Przemysław Czerpak, não é necessário no Harbour.
oVar := Win_OleCreateObject("ddddd")
...
oVar := NIL
Essa última linha é mania herdada do VB, o Harbour faz o trabalho corretamente e não precisa disso.
Só comentário, porque vejo tanto isso em fontes Harbour que acabei ficando na dúvida.
Mania do VB: var := NIL
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Mania do VB: var := NIL
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Mania do VB: var := NIL
José eu já vi após uma variável ser inicializada exemplo
cTeste := "Teste"
demais linhas
cTeste := NIL
Agora antes assim já declarar como NIL não vi, apesar de que qdo eu declaro
Local cVar1, cVar2, cVar3
Elas implicitamente estão sendo declaradas NIL.
[]´s
cTeste := "Teste"
demais linhas
cTeste := NIL
Agora antes assim já declarar como NIL não vi, apesar de que qdo eu declaro
Local cVar1, cVar2, cVar3
Elas implicitamente estão sendo declaradas NIL.
[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
Mania do VB: var := NIL
Ok: não gera erro de execução nos programas em Harbour...
Entretanto se a variavel não foi instanciada como LOCAL: vale sim atribuir NIL na intenção de se liberar memoria...
Acredito: Seria interessante a existencia dos metodos free e/ou destroy para real eficiencia do procedimento ( release from memory poderia ser utilizado para provar tal necessidade )...
Abç...
Entretanto se a variavel não foi instanciada como LOCAL: vale sim atribuir NIL na intenção de se liberar memoria...
Acredito: Seria interessante a existencia dos metodos free e/ou destroy para real eficiencia do procedimento ( release from memory poderia ser utilizado para provar tal necessidade )...
Abç...
M., Ronaldo
by: IMATECH
IMATION TECNOLOGIA
by: IMATECH
IMATION TECNOLOGIA
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Mania do VB: var := NIL
Sim, mas é que muitos usam isso até quando declaram variáveis locais.
No VB6 é que acabava sendo obrigatório isso, por prender o conteúdo das variáveis. Viravam o equivalente ao Static Var do clipper, e prendiam conteúdo.
No VB6 é que acabava sendo obrigatório isso, por prender o conteúdo das variáveis. Viravam o equivalente ao Static Var do clipper, e prendiam conteúdo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Mania do VB: var := NIL
Notes for Harbour developers:
Viktor Szakats / Giovanni Di MariaIn order to make good use of the Qt classes, you should see the include file "hbqtgui.ch"
The path of this include is (for windows) /hbnn/include
You should consult the Nokia's offcial documentation
If possible, you must not use static variables
If you use static variables, you have to set them to NIL at exit of the program
You should disconnect the objects that were attached with the connect method
It is strongly recommended to use hbformat tool to format the .prg sources
To create a source, you can copy and paste the code to your text editor and save it with .prg extension
When you connect an object with a Signal, if must be passed as string.
Example: oButton1:Connect( "clicked()", { || QApplication():quit() } )
When you connect an object with a Event, if must be passed as constant.
Example: oWnd:connect( QEvent_KeyPress , { |k| keypressed( k ) } )
Remember to stop the object QTimer() at exit of the program, if you use it
The sources are formatted with "hbformat.exe" utility
M., Ronaldo
by: IMATECH
IMATION TECNOLOGIA
by: IMATECH
IMATION TECNOLOGIA

