Здравствуйте, Кодт, Вы писали:
К>Реальная проблема — это нарушение ODR.
Я всё это знаю, и это всё уже обсуждалось...
РЕАЛЬНЫЙ сценарий проблемы тут другой. И тогда двухфазный поиск чуть ли не хуже делает. Во всяком случае не однозначно лучше.
Если вернуться к твоему примеру, то у нас обычно нет проблемы, проверить, что есть звисимость от внешней функции. Ты же тестируешь свои шаблоны?
Обычно проблема возникает иначе. Есть какое-то нужное определение bar и где-то в программе есть ещё другая bar, перегруженная. И когда те и другие хедеры встречаются, то от того, в каком конкретно порядке они встречаются и вообще от факта включения, зависит результат.
При этом в стандарте результат зависит от порядка включения, а у МС только от факта, так что у них шума вообще меньше, а не больше получается...
Но даже это тут не главное. Главное тут другое, в правильной программе, если уж у тебя есть перегрузка этой самой bar, и она зовётся из контекста, где не ясно, или не очевидно, какая конкретно позовётся, то должно быть не важно какая. И так и сяк должно быть правильно. Либо не должно быть такой перегрузки. И если программировать так, что не важно какая, то поблема начинает носить чисто формальный характер...
А если не придерживаться такого правила, то жить всё равно нельзя, хоть по стандарту, хоть, как у МС...
Более подробно уже обсуждалось, например тут:
http://rsdn.ru/forum/cpp/4656203.aspxАвтор: Erop
Дата: 12.03.12
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, stil.man, Вы писали:
SM>То что были срачи не очевидно, а поиск как по вашему ключевому слову так и по другим не помог, вылетает куча всего но не то что нужно.
Попробуй по словам "смертный грех", например
SM>Можете дать конкретную ссылку если хотите.
http://rsdn.ru/forum/cpp/4656203.aspxАвтор: Erop
Дата: 12.03.12
и рядом...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском