MQL5 syntax question

 

Hi guys, absolutely newbie here.

I was stumbled upon a function that look like this :

bool CHistoryPositionInfo::HistorySelect(datetime from_date,datetime to_date)
  {
//--- request the history of deals and orders for the specified period
   if(!::HistorySelect(from_date,to_date))
     {
      Print(__FUNCTION__+" > Error: HistorySelect -> false. Error Code: ", GetLastError());
      return(false);
     }

//--- clear all cached position ids on new requests to the history
   m_tickets.Shutdown();

//--- define a hashset to collect position IDs (with no duplicates)
   CHashSet<long>set_positions;

// blablblablablablablablablablablablablablablablablablablablablablablablablablablablablaabla 

I'm unfamiliar with the last line that says :

CHashSet<long>set_positions;

My question is, what does the " <long> " means ? What does it do ? Is that some type conversion ? when to use it? 

Thank you for your explanation.

 
MQLFarmer:
CHashSet<long>set_positions;

It's a template type parameter.

Documentation on MQL5: Language Basics / Object-Oriented Programming / Class templates
Documentation on MQL5: Language Basics / Object-Oriented Programming / Class templates
  • www.mql5.com
Class templates - Object-Oriented Programming - Language Basics - MQL5 Reference - Reference on algorithmic/automated trading language for MetaTrader 5