That's strictly speaking not valid C++, .field notation is a C99-ism.  It works with most compilers, though.