forked from rosh/MQL5Book
35 lines
983 B
MQL5
35 lines
983 B
MQL5
//+------------------------------------------------------------------+
| |
//| ConverterT.mqh |
| |
//| Copyright 2021, MetaQuotes Ltd. |
| |
//| https://www.mql5.com |
| |
//+------------------------------------------------------------------+
| |
| |
//+------------------------------------------------------------------+
| |
//| 2-way bitwise exact conversion between T1 and T2 |
| |
//+------------------------------------------------------------------+
| |
template<typename T1,typename T2>
| |
class Converter
| |
{
| |
private:
| |
union DataOverlay
| |
{
| |
T1 L;
| |
T2 D;
| |
};
| |
| |
DataOverlay data;
| |
| |
public:
| |
T2 operator[](const T1 L)
| |
{
| |
data.L = L;
| |
return data.D;
| |
}
| |
| |
T1 operator[](const T2 D)
| |
{
| |
data.D = D;
| |
return data.L;
| |
}
| |
};
| |
//+------------------------------------------------------------------+
|