Я также раздражаюсь, что это не может вывести тип на основе присвоения, особенно когда это - тип значения. Существуют причины хотя при вхождении в объектные иерархии.
, Если "ResultOfSomeCalc ()" возвратил "интервал?", тогда это работало бы . C# должен выяснить тип независимо от того, что налево от присвоения. Таким образом, Вы говорите ему о возврате пустого указателя или интервала - и логика в компиляторе не существует для имения его, заменяют Nullable как общим знаменателем.
Уведомление, что эти варианты ДЕЙСТВИТЕЛЬНО работают, и это может помочь Вам понять:
object someValue = true ? new Nullable<int>(ResultOfSomeCalc()) : null;
object someValue = true ? (int?)ResultOfSomeCalc() : null;
Hope это помогает.
As a command, type
:%s/^M$//
(To get ^M, press ^V ^M, where ^ is CTRL on most keyboards)
There's a program called dos2unix that should strip those for you. Windows uses different line-ending characters which is why that happens.
Вы можете сделать это:
:set fileformats=dos
Он скроет ^ M
, не касаясь файла.
Я обычно пропустите пораженные файлы через fromdos
перед их повторным открытием. fromdos
является частью пакета tofrodos .
The origin of the problem may have been through an FTP transfer. When you FTP these files from one box to another, make sure to use ASCII transfers. Use the command "ASC."