Есть ли переключатель, который я могу поставить для cl.exe
, который включит предупреждение или ошибку, когда typename
] отсутствует в квалифицированном зависимом типе?
Я работаю в среде, где разработчики обычно работают на одной платформе, либо Windows, либо Linux, и в конечном итоге код создается на обеих платформах каждую ночь. Мы' Мы столкнулись с проблемой, когда люди забывали использовать typename
для квалифицированных зависимых типов в Windows, где Visual C ++ 2008 автоматически вставляет отсутствующее typename
, если это возможно. Когда они проверяют код таким образом, сборка в Linux прерывается, где g ++
требует типовое имя
. Было бы желательно настроить Makefile
так, чтобы можно было ожидать того же поведения typename
в Windows и Linux, чтобы снизить вероятность нарушения сборки. Я предпочитаю поведение g ++
, но все, что помогло бы двум платформам вести себя одинаково, было бы очень полезно.
См. Также Почему мне нужно использовать typedef typename в g ++, но не VS?