Erros, bugs, perguntas - página 2417
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Estou ciente de que não compila. Estou a falar de verificação de sintaxe (que em ME também se chama "Compilar"), porque até a especifiquei entre parênteses num post anterior. Se também se executar a verificação de sintaxe no compilador C++ (através da linha de comando normalmente), ele repreenderá como um querido.
Veja, se não especificar:
C++ compila este código na perfeição. Portanto, a sintaxe está correcta. O problema começa ao nível da criação de objectos, porque é aí que os objectos de classe serão atribuídos.
Basta imaginar um modelo que nunca verificaria para ver se pode ser utilizado num cabeçalho. O que é que o compilador deve fazer neste caso? Suponha que precisa de implementar std:lower para uma estrutura e não há implementação em *.h... O compilador também não pode jurar na fase de verificação.
Pode especificar como verifica a sintaxe para *.h a partir da linha de comando para verificar este código? Tornou-se interessante)
Veja, se não especificar:
C++ compila este código na perfeição. Então a sintaxe está correcta.
Lógica interessante ) E se retirar todo o código, então a sintaxe é ainda mais correcta? ) Citei um código concreto. Não disse que a classe B em particular é incorrecta. Pode muito bem ser usada para chamar métodos estáticos, etc.
Imagine apenas um modelo que não vai verificar para utilização no cabeçalho. O que é que o compilador deve fazer neste caso?
Não há necessidade de substituir noções. Um modelo só é verificado quando é expandido com tipos de betão, é compreensível.
Pode especificar como verifica a sintaxe para *.h a partir da linha de comando para verificar este código? Ficou interessante)
Não posso dar nenhuma dica aqui, porque não me preocupei com tal pandeiro, e escrevi uma macro para VS, que faz compilação de cabeçalho. Para este efeito, muda o modo de documento actual para cpp on the fly, compila-o e depois regressa. Simples e de bom gosto.
Não compreendo porque não há nenhuma opção normal para verificar a sintaxe do cabeçalho em estúdio. Estou a usar uma versão bastante antiga, talvez já esteja disponível.
Não compreendo porque é que não há nenhuma opção normal para verificar a sintaxe do cabeçalho em estúdio.
Ctrl+F7 , esta combinação existe provavelmente desde pelo menos o Studio 2008 - compilar um ficheiro separado
Hesitei durante muito tempo antes de afixar, verificando a minha própria construção, mas ainda há algo de errado com o testador...
O teste parou literalmente no início:
Sem mudar nada, pressiono "começar" uma segunda vez, vai até ao fim (com uma pequena pausa no local onde foi interrompido) :
Fez mais algumas abordagens - os resultados são estritamente alternados (um após o outro, mesmo/ouds). Até ao ponto de "penhasco", os gráficos de equilíbrio são semelhantes. Mais uma vez, eu não mudo nada, basta clicar em "começar".
Este é muito provavelmente o ponto em que acrescenta outro carácter (porque não todos os 5 desde o início do teste?):
Deixando de lado a questão da disponibilidade real de memória (segundo o gestor de tarefas, 1,2-1,4GB grátis, ou seja, corresponde ao relatório), não pode ser que o mesmo teste precise de quantidades diferentes de memória para ser executado? E se o relatório diz que 400Mb é suficiente, pode fazer três desses testes em 1.2Gb...
Dados adicionais: teste em 5 símbolos, por abertura de barra, H1, 2004...hoje. O corpo tem 7 matrizes duplas com 500 elementos e uma pequena estrutura de matriz (armazena dados para cada símbolo, ou seja, neste caso 5 x 13), o tamanho é definido durante a inicialização e não muda mais, ou seja, não há nada para consumir memória. O código é processual, simples, pequeno, sem repetição e inclui bibliotecas.
Funciona em quatro símbolos, mas em 6-7-8 tem o mesmo efeito que em 5 símbolos - apenas uma vez. Ao mesmo tempo, a primeira vez após adicionar um novo personagem - funciona sempre, a seguinte - não, depois funciona de novo, etc.
Há uma suspeita de que a memória não está a ser libertada atempadamente, apenas a presença de um erro relacionado com a sua falta.
Total de 3 problemas:
Tratava-se de cabeçalhos, e esta combinação refere-se ao cpp. Pelo menos no meu estúdio de 2010, faz.
Porque é proibido?
Porque é proibido?
Esta tem sido a tradição desde tempos imemoriais. literais apenas por valor. porquê - não sei, tem de se perguntar aos criadores
A passagem de um parâmetro por referência implica que existe uma variável distribuída na memória.
As constantes não são armazenadas em qualquer lugar e são utilizadas directamente.
Não sei porquê, vou ter de perguntar à equipa de desenvolvimento.
Para agradar aos masoquistas. Não fiquei impressionado com o bilio padrão, por isso decidi escrever um vector semelhante, mas devido à abundância de "truques", acaba por ser mais um subdesenvolvimento.