«Используйте новое ключевое слово»

Компания «Майкрософт» ещё год назад порадовала своим шедевром автоматического перевода: «Шаблон, следующем за именем класса шаблон, параметры должны перечисляться в порядке, который используется в списке параметров шаблон».


Но на этот раз они превзошли сами себя.

warning CS0108: "Modeling.BezierCurve.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)" скрывает наследуемый член "Modeling.Shape.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)". Если скрытие было намеренным, используйте новое ключевое слово.

В случае первого сообщения об ошибке хоть что-то понятно, можно ведь и поискать вариант на языке оригинала. В случае второго сообщения понятно всё и не понятно ничего. Если я должен использовать ключевое слово, то какое? Почему его от меня скрывают?

Недолгий поиск позволил выяснить, что последняя часть сообщения в оригинале звучала так: «Use the new keyword if hiding was intended». То есть: «Используйте ключевое слово new, если сокрытие было намеренным».

Почему я использую программу с дрянным переводом? А иначе ведь не попалась бы такая загадка. И ещё на руках плюс один аргумент в пользу отказа от исключительно машинного перевода, которым часто грешит «Майкрософт». Казалось бы, умные люди.

11 апреля 2014 · программирование