- Tipos Inteiros
- Tipos Reais (double, float)
- Número complexo (complex, complexf)
- Tipo string
- Estruturas, Classes e Interfaces
- Objeto Array Dinâmico
- Matrizes e vetores
- Conversão de Tipo (Typecasting)
- Tipo void e constante NULL
- Tipos personalizados
- Ponteiros de Objeto
- Referência, Modificador & e Palavra-chave this
Número complexo (complex, complexf)
O tipo integrado complex é uma estrutura com dois campos double:
struct complex
|
O tipo integrado complexf é uma estrutura com dois campos float:
struct complexf
|
Os tipos complex e complexf podem ser passados por valor como parâmetros de funções MQL5 (ao contrário das estruturas comuns, que são passadas apenas por referência). Para funções importadas de DLLs, os tipos complex e complexf devem ser passados apenas por referência.
O sufixo 'i' é usado para descrever constantes complexas:
complex square(complex c)
|
Atualmente, apenas operações simples estão disponíveis para números complexos: =, +, -, *, /, +=, -=, *=, /=, ==, !=.
O suporte a funções matemáticas adicionais será acrescentado posteriormente, permitindo calcular valor absoluto, seno, cosseno e outras.
vectorc
Um array unidimensional de números do tipo complex destina-se ao trabalho com números complexos. A notação vector<complex> pode ser usada em funções de modelo.
matrixc
Um array bidimensional de números do tipo complex destina-se ao trabalho com números complexos. A notação matrix<complex> pode ser usada em funções de modelo.
vectorcf
Um array unidimensional de números do tipo complexf destina-se ao trabalho com números complexos. A notação vector<complexf> pode ser usada em funções de modelo.
matrixcf
Um array bidimensional de números do tipo complexf destina-se ao trabalho com números complexos. A notação matrix<complexf> pode ser usada em funções de modelo.