[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 206
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
querida... não há necessidade de escrever aqui em letras tão grandes... você pode quebrar seus olhos :-)
e isto... antes de fazer perguntas... você já tentou ler a Ajuda no Metaeditor? Tudo isso?...para começar...para não fazer perguntas estúpidas sobre tipos e coisas assim....
===
Tipo de operação para a função OrderSend(). Pode ser qualquer um dos seguintes valores:
Agora vamos ao ponto: digamos que temos 3 ordens e todas são ordens de mercado. Então, com 3 iterações não atingiremos o bloco 4 em nenhuma delas. E após a última iteração iremos imediatamente para o bloco 5, contornando o bloco 4. O bloco 5 contém a variável Tip, que é declarada no bloco 4. Mas o bloco 4 não foi executado. Portanto, a variável Tip não é declarada. Então usamos a variável antes de declará-la?
Por quê? O compilador alocou espaço de memória para a variável durante a primeira passagem... e o acesso não causará um erro...
O seguinte ponto não está claro: na primeira passagem (assumindo que todas as 3 ordens são ordens de mercado), não chegamos ao bloco 4, já que a condição se(OrderType()<2) for atendida no bloco 3. Então o próximo iterador continua completando a iteração atual e pula o bloco 4, que é onde a variável Tip é declarada. Isso significa que a variável Tip não foi declarada durante a primeira iteração (ou seja, a linha que declara a variável Tip não foi executada)... E assim continua para todas as 3 iterações. Ou seja, após a 3ª iteração chegamos ao bloco 5, que usa a variável Tip, ou seja, não foi declarada antes (ou seja, temos uma string com sua declaração, mas como nunca inserimos o bloco 4, isso significa que não declaramos essa variável...)
Eu estava me referindo à travessia do texto do programa pelo compilador - tendo encontrado uma definição de variável em qualquer ponto de uma função - o metacompilador declarou esta variável para uso abaixo do texto - apesar do fato de não haver nenhuma referência real à inicialização da variável... - que é o ambiente :-)
Embora não houvesse entrada na condição - o compilador alocou um local de memória para a variável... embora não o tenha inicializado... em Imprimir será = 0
Eu estava me referindo à travessia do texto do programa pelo compilador - tendo encontrado uma definição de variável em qualquer ponto de uma função - o metacompilador declarou essa variável para uso a jusante - apesar de não haver nenhuma referência real à inicialização da variável... - que é o ambiente :-)
Embora não houvesse entrada na condição - o compilador alocou um local de memória para a variável... embora não o tenha inicializado... em Imprimir será = 0
Então, se entendi corretamente: compilador, ao contrário do terminal (grosso modo) não executa loops, mas apenas lê linhas em fila e verifica se há erros... Isto é, o principal para ela (que é o critério de presença/ausência de erro) é que a linha (posição), onde uma variável foi utilizada, deve vir APÓS a linha (posição), onde esta variável foi declarada?
você poderia dizer :-) se você fizer uma declaração abaixo - e acessar a variável acima - o compilador irá gerar um erro...
Entendi, muito obrigado... Alguma dica sobre as variáveis GV?
o que tem a ver com eles? - global em nível de terminal?
armazenam algum tempo em um arquivo variável :-) a data de acesso, nome e valor do tipo duplo