I have a couple of questions regarding Qt plugin development.

1. Reading Qt's documentation of "How to Create Qt Plugins", the section describing the build key notes that "In cases where different versions of the same compiler do not produce binary compatible code, the version of the compiler is also present in the build key". Does anyone know how I can determine if different versions of compilers produce binary compatible code? I am by no means a C++ expert so I'm not exactly certain what this means even. I have written some Qt code compiled with MSVC 7 - will I be able to plugin components compiled with MSVC 8? What about other compilers?

2. When defining an interface, the Q_DECLARE_INTERFACE() macro associates an identifier with an interface class name. In the Qt examples it seems that they include a version number in the identifier (e.g. "com.trolltech.PlugAndPaint.BrushInterface/1.0"). Is this version number used anywhere by Qt? If Qt finds two different versions of the same plugin, I would like to use the newer one, but I'm not sure if this is something Qt does automatically or if that's a behavour I have to code myself.

Thank you.