Số phức (complex)
Kiểu phức tích hợp là một cấu trúc có hai trường kép:
cpp
struct complex
{
double real; // Phần thực
double imag; // Phần ảo
};
1
2
3
4
5
2
3
4
5
Kiểu "phức (complex)" có thể được truyền theo giá trị dưới dạng tham số cho các hàm MQL5 (ngược lại với các cấu trúc (structures) thông thường, chỉ được truyền bằng tham chiếu). Đối với các hàm được nhập từ DLL, kiểu "phức" chỉ được truyền bằng tham chiếu. Hậu tố 'i' được sử dụng để mô tả các hằng số phức:
cpp
complex square(complex c)
{
return(c*c);
}
void OnStart()
{
Print(square(1+2i)); // Một hằng số được truyền dưới dạng một tham số
}
// "(-3,4)" sẽ là đầu ra, là một chuỗi biểu diễn của số phức
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
Hiện chỉ có các phép toán đơn giản dành cho số phức: =
, +
, -
, *
, /
, +=
, -=
, *=
, /=
, ==
, !=
. Hỗ trợ cho các hàm toán học bổ sung sẽ được thêm vào sau, cho phép tính giá trị tuyệt đối, sin, cosin và các giá trị khác.
vectorc
- Mảng một chiều gồm các số kiểu phức nhằm xử lý các số phức.
- Mục
vector<complex>
có thể được sử dụng trong các hàm mẫu. - Các phép toán vector trên kiểu
vectorc
chưa được triển khai.
matrixc
- Mảng hai chiều gồm các số kiểu phức nhằm xử lý các số phức.
- Mục
matrix<complex>
có thể được sử dụng trong các hàm mẫu. - Các phép toán matrix trên kiểu
matrixc
chưa được triển khai.