Если Вы не выписываете ссылку с помощью JavaScript (так, чтобы Вы знали, что это включено в браузере), необходимо идеально предоставлять надлежащую ссылку людям, которые просматривают с отключенным JavaScript и затем предотвращают действие по умолчанию ссылки в onclick обработчике событий. Таким образом, те с JavaScript включили, выполнит функцию, и те с отключенным JavaScript перейдут к соответствующей странице (или местоположение в той же странице) вместо того, чтобы просто нажать на ссылку и ничего не иметь происходят.
Вероятная проблема заключается в том, что первый компилятор хочет using namespace std;
, прежде чем разрешить использование недекорированных идентификаторов из этого пространства имен (например, for_each
), в то время как второй является чрезмерно разрешительным и не требует этого.
Конечно, как горячо указывали другие ответы и комментарии, есть возможно, предпочтительнее, например, явное написание std :: for_each
в каждом случае или использование с использованием объявления ( с использованием std :: for_each;
]) вместо более широкого с использованием директивы ( с использованием пространства имен std;
) - но этот (хороший) совет не является ответом на ваш вопрос о том, почему один компилятор должен диагностировать ошибка, пока другой нет ;-).
попробуйте вместо этого std :: for_each ()
. Возможно, он не видит пространство имен.