Ok - according to the MSDN documentation:
"A global data item can normally be initialized only once in an EXE or DLL project. selectany can be used in initializing global data defined by headers, when the same header appears in more than one source file. selectany is available in both the C and C++ compilers."
So basically it's so you can do "int MyExternVar = 0;" in a header and not get the linker to explode with errors telling you that every C file is defining overlapping "MyExternVar"s.