SetReturnError
Đặt mã trả về cho quá trình terminal khi hoàn thành hoạt động.
void SetReturnError(
int ret_code // mã hoàn thành của terminal client
);
2
3
Tham số
ret_code
[truyền vào] Mã sẽ được trả về bởi quá trình terminal client khi hoàn thành hoạt động.
Giá trị trả về
Không có giá trị trả về.
Ghi chú
Việc đặt mã trả về ret_code
được chỉ định bằng hàm SetReturnError()
hữu ích để phân tích lý do hoàn thành hoạt động lập trình khi khởi chạy terminal qua dòng lệnh.
Không giống như TerminalClose()
, hàm SetReturnError()
không hoàn thành hoạt động của terminal. Thay vào đó, nó chỉ đặt mã mà quá trình terminal trả về khi hoàn thành.
Nếu hàm SetReturnError()
được gọi nhiều lần và/hoặc từ các chương trình MQL5 khác nhau, terminal sẽ trả về mã trả về được đặt cuối cùng.
Mã đã đặt được trả về khi quá trình terminal hoàn thành, trừ các trường hợp sau:
- Đã xảy ra lỗi nghiêm trọng trong quá trình thực thi;
- Hàm
TerminalClose(int ret_code)
đã được gọi, phát lệnh hoàn thành hoạt động terminal với mã được chỉ định.
Ví dụ:
//+------------------------------------------------------------------+
//| Hàm khởi động chương trình script |
//+------------------------------------------------------------------+
void OnStart()
{
matrix matrix_a =
{
{-3.474589, 1.106384, -9.091977,-3.925227 },
{-5.522139, 2.366887,-15.162351,-6.357512 },
{ 8.394926,-2.960067, 22.292115, 9.524129 },
{ 7.803242,-2.080287, 19.217706, 8.186645 }
};
matrix matrix_l(4,4);
matrix matrix_u(4,4);
//--- phân rã LU
matrix_a.LU(matrix_l,matrix_u);
//--- kiểm tra xem A = L * U
matrix matrix_lu=matrix_l.MatMul(matrix_u);
int compare_errors=(int)matrix_a.Compare(matrix_lu,1e-29);
Print("MatrixCompare errors=",compare_errors);
//--- khi hoàn thành, terminal client sẽ trả về số lỗi khi so sánh hai ma trận
SetReturnError(compare_errors);
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Xem thêm
Program Running
, Runtime Errors
, Uninitialization Reason Codes
, TerminalClose