#include <array>
#include <cstdint>
struct SessionKey {
SessionKey( const std:: array < uint8_t , 6 > & inMAC, uint16_t inEtherType) :
mMAC( inMAC) ,
mEtherType( inEtherType)
{
}
union {
struct {
std:: array < uint8_t , 6 > mMAC;
uint16_t mEtherType;
} ;
uint64_t mValue;
} ;
friend bool operator== ( const SessionKey & lhs, const SessionKey & rhs)
{ return lhs.mValue == rhs.mValue ; }
friend bool operator< ( const SessionKey & lhs, const SessionKey & rhs)
{ return lhs.mValue < rhs.mValue ; }
} ;
int main( )
{
std:: map < SessionKey, int > test;
}
I2luY2x1ZGUgPGFycmF5PgojaW5jbHVkZSA8Y3N0ZGludD4KCnN0cnVjdCBTZXNzaW9uS2V5IHsKICAgIFNlc3Npb25LZXkoY29uc3Qgc3RkOjphcnJheTx1aW50OF90LCA2PiAmIGluTUFDLCB1aW50MTZfdCBpbkV0aGVyVHlwZSkgOgogICAgICAgIG1NQUMoaW5NQUMpLAogICAgICAgIG1FdGhlclR5cGUoaW5FdGhlclR5cGUpCiAgICB7CiAgICB9CgogICAgdW5pb24gewogICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgIHN0ZDo6YXJyYXk8dWludDhfdCwgNj4gbU1BQzsKICAgICAgICAgICAgdWludDE2X3QgbUV0aGVyVHlwZTsKICAgICAgICB9OwogICAgICAgIHVpbnQ2NF90IG1WYWx1ZTsKICAgIH07CgogICAgZnJpZW5kIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTZXNzaW9uS2V5ICYgbGhzLCBjb25zdCBTZXNzaW9uS2V5ICYgcmhzKQogICAgeyByZXR1cm4gbGhzLm1WYWx1ZSA9PSByaHMubVZhbHVlOyB9CgogICAgZnJpZW5kIGJvb2wgb3BlcmF0b3I8KGNvbnN0IFNlc3Npb25LZXkgJiBsaHMsIGNvbnN0IFNlc3Npb25LZXkgJiByaHMpCiAgICB7IHJldHVybiBsaHMubVZhbHVlIDwgcmhzLm1WYWx1ZTsgfQp9OwoKCmludCBtYWluKCkKewoJc3RkOjptYXA8U2Vzc2lvbktleSwgaW50PiB0ZXN0Owp9
compilation info
prog.cpp: In function 'int main()':
prog.cpp:29:2: error: 'map' is not a member of 'std'
prog.cpp:29:21: error: expected primary-expression before ',' token
prog.cpp:29:23: error: expected primary-expression before 'int'
prog.cpp:29:23: error: expected ';' before 'int'
stdout