Как я могу обойти предупреждение Visual C ++ 2005 «Превышена длина декорированного имени, имя было усечено»?

Например, скажем, по какой-то причине у меня был фрагмент кода, который выглядел так:

mutable std::vector<std::vector<std::vector<std::vector<
std::vector<MyNamespace::MyType> > > > > myFreakingLongVectorThing;

, и я получаю предупреждение, которое выглядит следующим образом :

C:\Program Files (x86)\Microsoft Visual Studio 8\VC\include\xstring(1665) : warning   
    C4503: 'std::vector<_Ty>::operator []' : decorated name length exceeded, name was truncated
    with
    [
      _Ty=std::vector<std::vector<std::vector<std::vector<std::vector<MyNamespace::MyType>>>>>
    ]

есть ли способ переписать этот долбанный длинный вектор, чтобы не получать это предупреждение? Я все еще хочу, чтобы структура данных была такой же, но не получаю этого предупреждения. Я не хочу отключать предупреждение. Возможно?

Примечание: это Visual Studio 2005

.... если вам действительно интересно, почему я работаю с такой ужасной структурой данных, это вызвано автоматически сгенерированным кодом.

14
задан agf 29 September 2011 в 14:35
поделиться