рд▓реЗрдЦ рдХреЗ 
рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ, TIOBE рд░реЗрдЯрд┐рдВрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ C # рдкрд░ VB.NET рд╢реНрд░реЗрд╖реНрдарддрд╛ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЬреАрд╡рдВрдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдорд┐рд▓реАред рдЗрд╕рд▓рд┐рдП, 
AngReload рдХреА 
рд╕рд▓рд╛рд╣ рдкрд░ 
, StackOverflow рдХреЗ 
рд░реБрдЭрд╛рдиреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ ред

C # рдЕрднреА рднреА рдордЬрдмреВрдд рд╣реИ! рдЬрд┐рд╕ рдХреНрд░рд╛рдВрддрд┐ рдХреА рдмрд╛рдд рдЗрддрдиреЗ рд╕рдордп рд╕реЗ рдХреА рдЬрд╛ рд░рд╣реА рдереА, рд╡рд╣ рд░рджреНрдж рд╣реЛ рдЧрдИ рд╣реИ! рд╣реБрд░реНрд░реЗ, рдХреЙрдорд░реЗрдбреНрд╕! рдпрд╛ рдирд╣реАрдВ? TIOBE рд░реЗрдЯрд┐рдВрдЧ рдЦреЛрдЬ рдЗрдВрдЬрди рдкреНрд░рд╢реНрдиреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдФрд░ SO рд░реЗрдЯрд┐рдВрдЧ рдкреВрдЫреЗ рдЧрдП рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЯреИрдЧ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рд╢рд╛рдпрдж VB.NET рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕, рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдРрд╕реЗ рд▓реЛрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╕ рд╕реНрдЯреИрдХрд╡реЗрд░рдлреНрд▓реЛ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ? рдпрд╛ Google, рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдмрд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд╣рд╛рдВ рдЧрдП, рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдХреИрд╕реЗ рдПрдХ рдкреНрд░рд╢реНрди рдкреВрдЫреЗрдВ? рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдкрд░реНрдпрд╛рдкреНрдд Miscrosoft рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реЛ, рдФрд░ рд╕рднреА рдХреБрдЫ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рдкрд╣рд▓реЗ рд╣реА рджрд┐рдП рдЬрд╛ рдЪреБрдХреЗ рд╣реЛрдВред
рдПрдХ рддрд░рд╣ рд╕реЗ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп, VB.NET рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдФрд░ рд╕реНрдерд┐рд░ рд╣реИ, рдпрджреНрдпрдкрд┐ рдорд╛рддреНрд░рд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдирд╣реАрдВ рд╣реИред рдФрд░, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдФрд░ рднрд╛рд╖рд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдордЬрдмреВрдд рдЯреАрдо рдХреЗ рдмрд┐рдирд╛ рдРрд╕рд╛ рдкрд░рд┐рдгрд╛рдо рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдиреАрдЪреЗ рдЗрд╕ рдЯреАрдо рдХреЗ рдПрдХ рд╕рджрд╕реНрдп 
рдПрдВрдердиреА рдЧреНрд░реАрди рдХреЗ рд▓реЗрдЦ рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХрд╛ рджреВрд╕рд░рд╛ рднрд╛рдЧ рд╣реИред
рд╕рд╛рдордЧреНрд░реА
рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рдард░реВрдкрд╛рдВрддрд░рдг
рднрд╛рд╡
 рд░реВрдкрд╛рдВрддрд░рдг
34. рдмреВрд▓рд┐рдпрди рдкрд░рд┐рд╡рд░реНрддрди
Boolean True рдХреЛ рдХрд┐рд╕реА рднреА рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкреНрд░рдХрд╛рд░ рдХреА рдкреИрджрд╛рд╡рд╛рд░ рдХреЗ рд▓рд┐рдП 
Boolean True рд╣реИ 
-1 , рдФрд░ рдХрд┐рд╕реА рднреА рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдХрд╛рд░ рд╕реЗ рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп рджреЗрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ C # рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, 
Convert.ToInt32 рд╡рд┐рдзрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 
True рдХреЛ 
1 рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ 
IL рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд┐рдкрд░реАрдд рджрд┐рд╢рд╛ рдореЗрдВ, 
0 рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рднреА рд╕рдВрдЦреНрдпрд╛ 
True рдмрджрд▓ рдЬрд╛рддреА рд╣реИред
рдХреНрдпреЛрдВ? VB рдХрд╛ рдХрд╛рд░рдг 
-1 рд╕реЗ 
1 рддрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рднреА рднрд╛рд╖рд╛ рдореЗрдВ 
-1 (рд╕рднреА рдмрд┐рдЯреНрд╕ 0 рдкрд░ рд╕реЗрдЯ рд╣реИрдВ) рдХреА рдмрд┐рдЯрд╡рд╛рдЗрдЬрд╝ рдиреЗрдЧреЗрдЯрд┐рд╡ 
-1 (рд╕рднреА рдмрд┐рдЯреНрд╕ 
1 рд╕реЗрдЯ рд╣реИрдВ), рдЗрд╕рд▓рд┐рдП рдЗрд╕ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рддрд╛рд░реНрдХрд┐рдХ рдФрд░ рдмрд┐рдЯрд╡рд╛рдЗрдЬрд╝ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ 
And , 
Or Xor рдЬреИрд╕реЗ рдСрдкрд░реЗрд╢рдиред
"рдЯреНрд░реВ" рдФрд░ "рдЧрд▓рдд" рд▓рд╛рдЗрдиреЛрдВ рд╕реЗ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдмрд╛рддрдЪреАрдд рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдмреЗрд╢рдХ, рдХреЗрд╕ рдЕрд╕рдВрд╡реЗрджрдирд╢реАрд▓)ред
35. Enum рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде Enum рдкреНрд░рдХрд╛рд░реЛрдВ рдФрд░ рдЙрдирдХреЗ рдЖрдзрд╛рд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмреАрдЪ рдмрд╛рддрдЪреАрдд рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕реАрдорд┐рдд рд╣реИ, рднрд▓реЗ рд╣реА рд╡рд┐рдХрд▓реНрдк рд╕рдЦреНрдд рдСрди рдкрд░ рд╕реЗрдЯ рд╣реЛ
рджрд╛рд░реНрд╢рдирд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдПрдХ рднрд╛рд╖рд╛ 
Enum рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддреА рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рдореВрд▓ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдирд╛рдорд┐рдд рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВред рдпрд╣ рд╕рдмрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдЬрд╣рд╛рдВ рдЬрдЧрд╣ рд╕рдорд╛рдирддрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдкреВрд░реНрдгрд╛рдВрдХ рдХреА рддреБрд▓рдирд╛ рдПрдиреНрдпреВрдорд░реЗрд╢рди рдорд╛рди рд╕реЗ рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдЬрдмрдХрд┐ C # рдореЗрдВ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИред
рдХрд╣рд╛рдиреА рдХрд╛ рд╕рдордп: рд░реЛрдЬрд▓рд┐рди рдПрдкреАрдЖрдИ рдХрдИ рдЖрдВрддрд░рд┐рдХ рд╕рдВрд╢реЛрдзрдиреЛрдВ рд╕реЗ рдЧреБрдЬрд░рд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ 
SyntaxKind рдЧрдгрдирд╛ рдЖрд╡рдВрдЯрд┐рдд рдХреА рдЧрдИ рдереА, рдЬреЛ рдЖрдкрдХреЛ рдмрддрд╛рддреА рд╣реИ рдХрд┐ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреНрдпрд╛ рдиреЛрдб рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 
IfStatement , 
TryCastExpression )ред рдПрдХ рдмрд╛рд░, рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдПрдХ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рднрд╛рд╖рд╛ рд╕реЗ рдЕрдореВрд░реНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ 
SyntaxKind рдореВрд▓реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд▓реМрдЯрд╛рдпрд╛, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ 
SyntaxKind рд░реВрдк рдореЗрдВ, рдФрд░ рдХрдЪреНрдЪреЗ 
SyntaxKind рдФрд░ 
SyntaxKind рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рдмрд┐рдирд╛, рдпрд╣ рдбреЗрд╡рд▓рдкрд░ рддреБрд░рдВрдд рдореЗрд░реЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рдЖрдпрд╛ рдФрд░ рд╢рд┐рдХрд╛рдпрдд рдХреА: 
"int рд╣реИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╕реНрддрд╛рд░, рдореБрдЭреЗ рдПрдХ рдХрд╛рд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛! " ред
рд╡рд░реНрд╖реЛрдВ рдХреЗ рджреМрд░рд╛рди, рдПрдкреАрдЖрдИ рдХреЗ рдЕрдЧрд▓реЗ рд╕рдВрд╢реЛрдзрди рдХреЗ рджреМрд░рд╛рди, рд╣рдордиреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ ( 
Property Kind As SyntaxKind ) рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рдПрдХ рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд┐рдпрд╛, рдФрд░ рд╕рднреА рдПрдкреАрдЖрдИ 
Property Kind As SyntaxKind рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рд▓рдЧреЗред рд╕рднреА C # рдХреЛрдб рдЯреВрдЯ рдЧрдП, рдФрд░ рд╕рднреА VB рдХреЛрдб рдХрд╛рдо рдХрд░рддреЗ рд░рд╣реЗ рдЬреИрд╕реЗ рдХрд┐ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реБрдЖ рдерд╛ред
рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж, рд╣рдордиреЗ рдЗрд╕ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдирд╛рдо 
RawKind рдирд╛рдо рдкрд░ 
RawKind рдФрд░ рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╡рд┐рдзрд┐рдпреЛрдВ 
Kind() рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд╕рднреА C # рдХреЛрдб рдЯреВрдЯ рдЧрдП рдХреНрдпреЛрдВрдХрд┐ рдХреЛрд╖реНрдардХ рдХреЛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ VB рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рдерд╛, рд╕рднреА VB рдХреЛрдб рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рдереЗ рдЬреИрд╕реЗ рдХрд┐ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реБрдЖ рдерд╛ред
36. рдкреВрд░реНрдгрд╛рдВрдХ рдЕрдВрдХрдЧрдгрд┐рдд рдХреЗ рд▓рд┐рдП рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ / рдирдХрд╛рд░рд╛рддреНрдордХ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдХрд▓рди рд╡рд╛рддрд╛рд╡рд░рдг (рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕) рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рд▓реЗрдХрд┐рди VB рдФрд░ C # рд╡рд┐рднрд┐рдиреНрди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ; VB рдореЗрдВ, рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдЬрд╛рдБрдЪ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реИ
рдЕрднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рд╕реАрдорд╛ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 
Byte 0 рд╕реЗ 255 рддрдХ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЬрдм рдЖрдк 
Byte 1 рдХреЛ 255 рддрдХ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рддреЛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ? рдпрджрд┐ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ / рдЕрдВрдбрд░рдлреНрд▓реЛ рдЪреЗрдХ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдорд╛рди 0. рдкрд░ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдкреНрд░рдХрд╛рд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд╣реИ, рддреЛ рдпрд╣ рд╕рдмрд╕реЗ рдХрдо рдирдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 
SByte рд▓рд┐рдП -128) рдХреЛ 
SByte ред рдпрд╣ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдЖрдкрдХреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рддреНрд░реБрдЯрд┐ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ / рдЕрдВрдбрд░рдлреНрд▓реЛ рдЬрд╛рдБрдЪ рд╕рдХреНрд╖рдо рд╣реИ, рддреЛ рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ, рдЗрд╕ рд╣рд╛рдирд┐рд░рд╣рд┐рдд 
For loop рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
 Module Program Sub Main() For i As Byte = 0 To 255 Console.WriteLine(i) Next End Sub End Module 
github рд╕реНрд░реЛрдд рдХреЛрдбрдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрд╣ рд▓реВрдк VB рдореЗрдВ рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХ рджреЗрдЧрд╛ (рдЪреВрдВрдХрд┐ рд▓реВрдк рдХрд╛ рдЕрдВрддрд┐рдо рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ 
Byte рд╕реАрдорд╛ рд╕реЗ рдкрд░реЗ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдЬрд╛рдВрдЪ рдмрдВрдж рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде, рдпрд╣ рд▓реВрдк рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ 255 рдХреЗ рдмрд╛рдж рдореИрдВ рдлрд┐рд░ рд╕реЗ 0 рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп рдореЗрдВ рдкреНрд░рдХрд╛рд░ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЗ рд▓рд┐рдП рдиреНрдпреВрдирддрдо рдореВрд▓реНрдп рд╕реЗ рдиреАрдЪреЗ рдШрдЯрд╛рддреЗ рд╕рдордп рдЕрдВрддрд░реНрд╡рд╛рд╣ рд╡рд┐рдкрд░реАрдд рд╕реНрдерд┐рддрд┐ рд╣реИред
рдПрдХ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рд╕реНрдерд┐рддрд┐ рдХреЗрд╡рд▓ рджреЛ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдЬреЛрдбрд╝ рд╣реИред 130 рдФрд░ 150 рдХреА рд╕рдВрдЦреНрдпрд╛, рджреЛрдиреЛрдВ рдХреЛ 
Byte рд░реВрдк рдореЗрдВ рд▓реЗрдВред рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕рд╛рде рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЙрддреНрддрд░ 280 рд╣реИ, рдЬреЛ рдмрд╛рдЗрдЯ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛ рдЗрд╕рдХрд╛ рдПрд╣рд╕рд╛рд╕ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╡рд╣ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЙрддреНрддрд░ 24 рд╣реИред
рд╡реИрд╕реЗ, рдЗрд╕рдХрд╛ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред рджреЛ рдмрд╛рдЗрдЯреНрд╕ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдПрдХ рдмрд╛рдЗрдЯ рдорд┐рд▓рддреА рд╣реИ; рдпрд╣ рд╕рд┐рд░реНрдл рдмрд╛рдЗрдирд░реА рдЧрдгрд┐рдд рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реИред рдпрджреНрдпрдкрд┐ рдЖрдк рд░реВрдкрд╛рдВрддрд░рдг рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдХреЗ рднреА рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рд▓реЙрдиреНрдЧ рдХреЛ рдЗрдВрдЯреЗрдЧрд░ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИред рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХреЗ рдмрд┐рдирд╛, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗрд╡рд▓ рдЕрддрд┐рд░рд┐рдХреНрдд рдмрд┐рдЯреНрд╕ рдФрд░ рд╕рд╛рдорд╛рди рдХреЛ рдХрд╛рдЯ рджреЗрддрд╛ рд╣реИ рдЬрд┐рддрдирд╛ рдХрд┐ рдЗрд╕ рдЪрд░ рдореЗрдВ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред
рдЕрдВрддрд░ рдХреНрдпрд╛ рд╣реИ? рдкреНрд░рджрд░реНрд╢рдиред рдУрд╡рд░рдлреНрд▓реЛ рдХреЗ рд▓рд┐рдП рд╕реАрдПрд▓рдЖрд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ рдЧреИрд░-рдЪреЗрдХрд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рд╕рдордп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЕрдиреНрдп рд╕рднреА рд╕реБрд░рдХреНрд╖рд╛ рдЬрд╛рдВрдЪреЛрдВ рдХреА рддрд░рд╣ред VB рджрд░реНрд╢рди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдкреНрд░рджрд░реНрд╢рди рд╕реЗ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЗрд╕рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕реБрд░рдХреНрд╖рд╛ рдЬрд╛рдБрдЪ рд╕рдХреНрд╖рдо рд╣реИред C # рд╡рд┐рдХрд╛рд╕ рдЯреАрдо 
рдЖрдЬ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкрд░ рдПрдХ рдЕрд▓рдЧ рдирд┐рд░реНрдгрдп рд▓реЗ 
рд╕рдХрддреА рд╣реИ , рд▓реЗрдХрд┐рди рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдкрд╣рд▓реЗ C # рдбреЗрд╡рд▓рдкрд░реНрд╕ C / C ++ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдЖрдП рдереЗ, рд▓реЛрдЧреЛрдВ рдХреЗ рдЗрд╕ рд╕рдореВрд╣ рдХреЛ рд╕рдВрднрд╡рддрдГ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ рдХрд┐ рдХреЛрдб рдХреБрдЫ рдФрд░ рди рдХрд░реЗрдВ, рдЬрд┐рд╕рд╕реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЪрдХреНрд░ рдХреА рд▓рд╛рдЧрдд рд╣реЛ рд╕рдХрддреА рд╣реИ ; 
рдпрд╣ рдПрдХ рдХрдард┐рди рджрд╛рд░реНрд╢рдирд┐рдХ рдЕрдВрддрд░ рд╣реИ ред
Nuance: рдУрд╡рд░рдлреНрд▓реЛ / рдЕрдВрдбрд░рдлреНрд▓реЛ рдЪреЗрдХ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдиреЗ рдкрд░ рднреА, 
PositiveInfinity , 
NegativeInfinity , 
NaN рдХреЗ 
Single рдпрд╛ 
Double рд╕реЗ 
Decimal NaN рдХрд╛ рд░реВрдкрд╛рдВрддрд░рдг рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХ 
Decimal , рдХреНрдпреЛрдВрдХрд┐ рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╕рд┐рджреНрдзрд╛рдВрдд рджрд╢рдорд▓рд╡ рдореЗрдВ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
37. рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдирдВрдмрд░реЛрдВ рдХреЛ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдВрдХрд░реЛрдВ рдХреЛ рдЯреНрд░рдВрдХрдЯрд┐рдВрдЧ рдХреЗ рдмрдЬрд╛рдп рдЧреЛрд▓рд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ
рдпрджрд┐ рдЖрдк VB рдореЗрдВ 1.7 рдХреЛ рдкреВрд░реНрдгрд╛рдВрдХ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрд░рд┐рдгрд╛рдо 2 рд╣реЛрдЧрд╛ред C # рдореЗрдВ, рдкрд░рд┐рдгрд╛рдо 1 рд╣реЛрдЧрд╛ред рдореИрдВ рдЕрдореЗрд░рд┐рдХрд╛ рдХреЗ рдмрд╛рд╣рд░ рдЧрдгрд┐рддреАрдп рдирд┐рдпрдореЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореИрдВ рд╕рд╣рдЬ рд░реВрдк рд╕реЗ рдЧреЛрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реВрдВред рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд╕рд░реНрдХрд▓ рдХреЗ рдмрд╛рд╣рд░ рдореБрдЭреЗ рдХреЛрдИ рднреА рдирд╣реАрдВ рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ 1.7 рдХрд╛ рдирд┐рдХрдЯрддрдо рдкреВрд░реНрдгрд╛рдВрдХ 1 рд╣реИред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдИ рд░рд╛рдЙрдВрдбрд┐рдВрдЧ рд╡рд┐рдзрд┐рдпрд╛рдБ рд╣реИрдВ, рдФрд░ VB (рдФрд░ Math.Round рдкрджреНрдзрддрд┐ рдореЗрдВ) рд░рд╛рдЙрдВрдбрд┐рдВрдЧ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрд╡рд┐рджреЛрдВ рджреНрд╡рд╛рд░рд╛ рдмреИрдВрдХ рд░рд╛рдЙрдВрдбрд┐рдВрдЧ рдпрд╛ рд░рд╛рдЙрдВрдбрд┐рдВрдЧ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рд╕рд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рджреЛ рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХреЗ рдмреАрдЪ рдмреАрдЪ рдореЗрдВ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП, рд╡реАрдмреА рдирд┐рдХрдЯрддрдо рд╕рдо рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЧреЛрд▓ рд╣реЛрддрд╛ рд╣реИред рддреЛ 1.5 рдХреЛ 2 рдХреЗ рд▓рд┐рдП рдЧреЛрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ 4.5 рдХреЛ 4 рд╕реЗ рдЧреЛрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдо рд╕реНрдХреВрд▓ рдореЗрдВ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдкрдврд╝рд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ рд╡рд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ - рдореБрдЭреЗ 0.5 рд╕реЗ рдЧреЛрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ (рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рд╢реВрдиреНрдп рд╕реЗ рдкрдХреНрд╖ рдХреА рдУрд░)ред рд▓реЗрдХрд┐рди, рдЬреИрд╕рд╛ рдХрд┐ рдирд╛рдо рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рдмреИрдВрдХ рд░рд╛рдЙрдВрдбрд┐рдВрдЧ рдХрд╛ рдпрд╣ рдлрд╛рдпрджрд╛ рд╣реИ рдХрд┐ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЧрдгрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде, рдЖрдк рдЖрдзреЗ рдореЗрдВ рдЪрдХреНрдХрд░ рд▓рдЧрд╛рддреЗ рд╕рдордп рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рд╣рдореЗрд╢рд╛ рдкреИрд╕рд╛ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВ рдпрд╛ рд╣рдореЗрд╢рд╛ рдкреИрд╕рд╛ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдПрдХ рдмрдбрд╝реЗ рд╕реЗрдЯ рдкрд░, рдпрд╣ рдбреЗрдЯрд╛ рд╡рд┐рд░реВрдкрдг рдХреЛ рдЕрдВрддрд┐рдо рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд╡рд┐рдЪрд▓рди рддрдХ рд╕реАрдорд┐рдд рдХрд░рддрд╛ рд╣реИред
рдлрд░реНрдХ рдХрд╣рд╛рдВ рд╕реЗ рдЖрддрд╛ рд╣реИ? рдЧреЛрд▓рд╛рдИ рдЕрдзрд┐рдХ рд╕рд╣рдЬ рдФрд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реИ, рддреЗрдЬреА рд╕реЗ рдЫреЛрдЯрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдпрджрд┐ рдЖрдк LOB рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ VB рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ VBA рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ Excel macros рдЬреИрд╕реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рдмрд╕ рджрд╢рдорд▓рд╡ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛рдПрдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ ...ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд░реВрдкрд╛рдВрддрд░рдг рдХреА рд╡рд┐рдзрд┐ рд╣рдореЗрд╢рд╛ рдПрдХ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рдореБрджреНрджрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдПрдХ рдХреЛ рдЪреБрдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ...
38. NotInheritable Classes рдХреЛ / рдРрд╕реЗ рдЗрдВрдЯрд░рдлреЗрд╕ рд╕реЗ рдмрджрд▓рдирд╛ рдХреЛрдИ рдЧрд▓рддреА рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╡реЗ рд╕рдВрдХрд▓рди рдХреЗ рд╕рдордп рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ
рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, рдпрджрд┐ рдЖрдк рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдПрдХ NonInheritable class рдХреА рдЬрд╛рдБрдЪ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕рдВрдХрд▓рди рд╕рдордп рдкрд░ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдРрд╕рд╛ рд░реВрдкрд╛рдВрддрд░рдг рд╕рдВрднрд╡ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рднреА рдЗрдВрдЯрд░рдлреЗрд╕ рдФрд░ рдЗрд╕рдХреЗ рд╕рднреА рдореВрд▓ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВред рдпрджрд┐ рдкреНрд░рдХрд╛рд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИ, рддреЛ рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдРрд╕рд╛ рд░реВрдкрд╛рдВрддрд░рдг рдЕрд╕рдВрднрд╡ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд░рдирдЯрд╛рдЗрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдкреНрд░рдХрд╛рд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрдзрд┐рдХ рд╡реНрдпреБрддреНрдкрдиреНрди рдкреНрд░рдХрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, COM рдЗрдВрдЯрд░реЙрдк рдХреЗ рдХрд╛рд░рдг рдПрдХ рдЕрдкрд╡рд╛рдж рд╣реИ, рдЬрдм рд╕рдВрдХрд▓рди рд╕рдордп рдкрд░ рдпрд╣ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдХрд░рдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рдпрд╣ рд╣реЛрдЧрд╛ред рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ, VB рдХрдВрдкрд╛рдЗрд▓рд░ рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред
рдХреНрдпреЛрдВ? VB рдФрд░ COM рдПрдХ рд╕рд╛рде рдмрдбрд╝реЗ рд╣реБрдП рдЬрдм рд╡реЗ рдкреБрд░рд╛рдиреЗ рдкрдбрд╝реЛрд╕ рдореЗрдВ рдмрдЪреНрдЪреЗ рдереЗред рддреЛ рднрд╛рд╖рд╛ рдбрд┐рдЬрд╛рдЗрди рдореЗрдВ рдХрдИ рд╕рдорд╛рдзрд╛рди рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╡реАрдмреА рдЙрди рдЪреАрдЬреЛрдВ рдкрд░ рдмрд╣реБрдд рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реИ рдЬреЛ рдХреЗрд╡рд▓ .NET 1.0 рдХреЗ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рдордп COM рдореЗрдВ рдореМрдЬреВрдж рдереЗред
39. рдкреНрд░рдХрд╛рд░ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдореЗрдВ рдПрдХ рд╕рд╛рд░реНрдердХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдЕрдирдкреИрдХ (рдЕрдирдмреЙрдХреНрд╕) рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛, NullReferenceException рдирд╣реАрдВ рд╣реИ
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдпрд╣ рд╕рдВрджрд░реНрдн рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рднреА рд╕рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рд╣рд╛рдБ:
 CInt(CObj(Nothing)) = 0 
рдХреНрдпреЛрдВ? рдХреНрдпреЛрдВрдХрд┐ 
CInt(Nothing) = 0 , рдФрд░ рднрд╛рд╖рд╛ рдХреБрдЫ рд╣рдж рддрдХ рд╕реБрд╕рдВрдЧрдд рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдкрдиреЗ рдЕрдкрдиреЗ рдЪрд░ рдЯрд╛рдЗрдк рдХрд┐рдП рд╣реЛрдВ рдпрд╛ рдирд╣реАрдВред рдпрд╣ рдХрд┐рд╕реА рднреА рд╕рдВрд░рдЪрдирд╛ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рди рдХрд┐ рдмрд┐рд▓реНрдЯ-рдЗрди рд╕рд╛рд░реНрдердХ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВред рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП 
# 25 рдкрд░ рддрд░реНрдХ рджреЗрдЦреЗрдВред
40. рдЕрдирдмреЙрдХреНрд╕рд┐рдВрдЧ рдЖрджрд┐рдо рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ
VB рдФрд░ C # рджреЛрдиреЛрдВ рдореЗрдВ рдЖрдк 
Short рдХреЛ 
Integer рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдЖрдк рдкреИрдХ 
Short рдХреЛ 
Integer рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ? VB рдореЗрдВ 
Short рдХреЛ рдкрд╣рд▓реЗ рдЕрдирдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдлрд┐рд░ 
Integer рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред C # рдореЗрдВ, рдЬрдм рддрдХ рдХрд┐ рдЖрдк 
int рдХрдирд╡рд░реНрдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдирдкреИрдХ рдирд╣реАрдВ рдХрд░рддреЗ, рддрдм рддрдХ 
InvalidCastException рдХреЛ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдпрд╣ рд╕рднреА рдЖрдВрддрд░рд┐рдХ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдкреИрдХреНрдб рдиреНрдпреВрдореЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░, рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рдиреНрдпреВрдореЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░реЛрдВ, рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рджрд┐рдирд╛рдВрдХ рдХреЗ рдмреАрдЪ рд░реВрдкрд╛рдВрддрд░рдг (рд╣рд╛рдБ, рджрд╢рдорд▓рд╡ рдФрд░ рджрд┐рдирд╛рдВрдХ рдЖрджрд┐рдо рдкреНрд░рдХрд╛рд░ рд╣реИрдВ)ред
рдХреНрдпреЛрдВ? рдлрд┐рд░ рд╕реЗ, рдирд┐рд░рдВрддрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪрд╛рд╣реЗ рдЖрдкрдХрд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ, рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ, рдпрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╕реЗ рджреВрд╕рд░реЗ рдореЗрдВ рд░рд┐рдлреИрдХреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдКрдкрд░ 
# 39 рджреЗрдЦреЗрдВред
41. String рдФрд░ Char рдмреАрдЪ рд░реВрдкрд╛рдВрддрд░рдг рд╣реИрдВ
- StringрдХреЛ- Char- Stringрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рдЪрд░рд┐рддреНрд░ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
- CharрдХреЗрд╡рд▓ рдЙрдЪрд┐рдд рддрд░реАрдХреЗ рд╕реЗ- Stringрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдХреЛ рднреА VB (рдФрд░ рдпрд╣ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП) рдореЗрдВ рдПрдХ рдЪрд░рд┐рддреНрд░ рд╢рд╛рдмреНрджрд┐рдХ рдХрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдпрд╛рдж рд╣реИред
42. String рдФрд░ Char рд╕рд░рдгреА рдХреЗ рдмреАрдЪ рд░реВрдкрд╛рдВрддрд░рдг рд╣реИрдВ
- StringрдЕрдкрдиреЗ рд╕рднреА рд╡рд░реНрдгреЛрдВ рд╕реЗ рдорд┐рд▓рдХрд░ рдПрдХ- Charрд╕рд░рдгреА- Stringрдмрджрд▓ рдЬрд╛рддреА рд╣реИред
- Charрд╕рд░рдгреА рдЕрдкрдиреЗ рд╕рднреА рддрддреНрд╡реЛрдВ рд╕реЗ рдорд┐рд▓рдХрд░ рдПрдХ- StringрдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛ рдЬрд╛рддреА рд╣реИред
рдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдХреЗ рд▓рд┐рдП: рдпреЗ рдкрд░рд┐рд╡рд░реНрддрди рдирдИ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рдЖрдВрддрд░рд┐рдХ 
String рд╕рдВрд░рдЪрдирд╛ рддрдХ рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИред
рдордЬреЗрджрд╛рд░ рдХрд╣рд╛рдиреА: рдореИрдВрдиреЗ рдПрдХ рдмрд╛рд░ .NET 3.5 рдФрд░ 4.0 рдХреЗ рдмреАрдЪ рдкрд░рд┐рд╡рд░реНрддрди рдкрд╛рдпрд╛ (рдпрд╛ рдореИрдВ рдЗрд╕рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛, рдФрд░ рдореИрдВ рдЗрд╕ рдкрд░ рд╢реЛрдз рдХрд░ рд░рд╣рд╛ рдерд╛), рдХреНрдпреЛрдВрдХрд┐ рдЗрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ .NET рдЯреАрдо рдиреЗ 
ParamArray рд╕рдВрд╢реЛрдзрдХ рдХреЛ рджреВрд╕рд░реЗ 
String.Join рдЕрдзрд┐рднрд╛рд░ 
String.Join рдЬреЛрдбрд╝рд╛, рдЬреЛ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рдПрдХ рд╕рд░рдгреА рд▓реЗрддрд╛ рд╣реИред ред рд╕рдЯреАрдХ рдорд╛рдиреНрдпрддрд╛рдУрдВ рдХреЛ рд╕рдордп рдореЗрдВ рдЦреЛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╢рд╛рдпрдж рдмреЗрд╣рддрд░ рдХреЗ рд▓рд┐рдП), рд▓реЗрдХрд┐рди, рдЬреИрд╕рд╛ рдХрд┐ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ, рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ 
ParamArray рд╕рдВрд╢реЛрдзрдХ рдХреЗ рд╕рд╛рде рдЕрдм рдЖрдк рдПрдХ 
Char рд╕рд░рдгреА рдХреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдкреИрд░рд╛рдореАрдЯрд░ рд╕рд░рдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рддрддреНрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдордЬреЗрджрд╛рд░ рд╡рд┐рд╖рдпред
43 рдФрд░ 44. рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реЗ рд╕рд╛рдВрдЦреНрдпрд┐рдХ рдФрд░ рддрд┐рдерд┐ рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рд╢рд╛рдмреНрджрд┐рдХ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ (рдЖрдорддреМрд░ рдкрд░)
- CInt("&HFF") = 255
- CInt("1e6") = 1_000_000
- CDate("#12/31/1999#") = #12/31/1999#
рдпрд╣ рдЖрдзрд╛рд░ рдЙрдкрд╕рд░реНрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ (рдпрд╛ рдСрдХреНрдЯрд▓) рдЗрдирдкреБрдЯ рдХреЛ рдПрдХ рдирдВрдмрд░ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХреЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ: 
CInt("&H" & input) ред рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢, рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд╕рдордп рдпрд╣ рд╕рдорд░реВрдкрддрд╛ рдХрдо рд╣реЛрддреА рдЬрд╛ рд░рд╣реА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реАрдмреА рд░рдирдЯрд╛рдЗрдо рдХреЛ рдмрд╛рдЗрдирд░реА рдЙрдкрд╕рд░реНрдЧ рдФрд░ рдмреА рдпрд╛ 
1_000 рдЕрдВрдХ рд╕рдореВрд╣ 
1_000 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд╕рдВрдХреЗрддрди рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЯрд╛рдЗрдк рдкреНрд░рддреНрдпрдп рдХреЗ рдмрд┐рдирд╛, рдФрд░ рджрд┐рдирд╛рдВрдХ рд░реВрдкрд╛рдВрддрд░рдг рднреА рдорд╛рдирдХ рддрд┐рдерд┐ рд╕реНрд╡рд░реВрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП ISO-8601 рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ JSON рдкреНрд░рд╛рд░реВрдк рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: 
CDate("2012-03-19T07: 22Z") = #3/19/2012 02:22:00 AM# ред
рдХреНрдпреЛрдВ? рдореИрдВ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдФрд░ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рдЬрд╛рдирддрд╛ред рд▓реЗрдХрд┐рди рдореИрдВ 
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдиреНрдп рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдЖрдЬ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рд▓рдЧрднрдЧ рд╕рд░реНрд╡рд╡реНрдпрд╛рдкреА рд╣реИрдВ, рдЬреИрд╕реЗ # рдПрдлрдПрдл, рдпреВ + рдПрдлрдПрдл, 0 рдПрдХреНрд╕рдПрдлрдПрдлред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЬреАрд╡рди рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ ...
45. Char рдФрд░ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд░реВрдкрд╛рдВрддрд░рдг рдирд╣реАрдВ
рдХреНрдпрд╛?!?!?рдЗрди рд╕рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдХреНрдпрд╛ рдЖрдк рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реИрдВ? VB 
Char рдФрд░ 
Integer рдмреАрдЪ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдХреЛ рдордирд╛ рдХрд░рддрд╛ рд╣реИ:
- CInt("A"c)рд╕рдВрдХрд▓рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
- CChar(1)рд╕рдВрдХрд▓рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдХреНрдпреЛрдВ? рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдЖрдорддреМрд░ рдкрд░ рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ VB рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдФрд░ / рдпрд╛ рд╕рд╣рдЬ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди 
CInt("1") рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 
CInt("1") рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдзреЗ рдкрд╛рдардХреЛрдВ рдХреЛ рдирдВрдмрд░ 1 (рдЪрд░рд┐рддреНрд░ рдореВрд▓реНрдп 1) тАЛтАЛрдХреА рдЙрдореНрдореАрдж рд╣реЛрдЧреА рдФрд░ рдЖрдзреЗ рдирдВрдмрд░ 49 (ASCII / UTF рдХреЛрдб) рдХреА рдЙрдореНрдореАрдж рдХрд░реЗрдВрдЧреЗ рдЪрд░рд┐рддреНрд░ 1)ред рдЖрдзреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЧрд▓рдд рдЪреБрдирд╛рд╡ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, VB рдХреЗ рдкрд╛рд╕ рдХреНрд░рдорд╢рдГ ASCII / Unicode рдХреЛрдб рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, 
AscW рдФрд░ 
ChrW рд╡рд░реНрдг рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдп рд╣реИрдВред
рднрд╛рд╡
46. тАЛтАЛрдХреБрдЫ рднреА рдирд╣реАрдВ <> рдЕрд╢рдХреНрдд
VB рдореЗрдВ рд╢рд╛рдмреНрджрд┐рдХ 
Nothing рд╢реВрдиреНрдп рдХрд╛ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ 
"рдЬрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрд╕рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди", рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрджрд░реНрдн рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рд╢реВрдиреНрдп рд╣реИред рдЕрдВрддрд░ рдХреЗрд╡рд▓ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдХрд┐рд╕реА рд╕рдВрджрд░реНрдн рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
- рдХреБрдЫ рднреА рдирд╣реАрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рдХрд╛рд░ рдкрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ ...
- рдпрд╣ рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡рд╣ рдРрд╕рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред
рдЖрдЗрдП рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдЬреЛ рдпрд╣ рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИред
рдкрд╣рд▓рд╛, рд╢рд╛рдпрдж рдереЛрдбрд╝рд╛ рдЕрдЬреАрдм рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЛрдЧреЛрдВ рдХреЛ рдпрд╣ рд╕рдордЭ рдХрд░ рдЙрдбрд╝рд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдХрд┐ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо "рд╕рд╣реА" рдЫрд╛рдкреЗрдЧрд╛:
 Module Program Sub Main() Dim i As Integer = 0 If i = Nothing Then Console.WriteLine("True") End If End Sub End Module 
github рд╕реНрд░реЛрдд рдХреЛрдбрдХрд╛рд░рдг рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ: рдЖрдк 
Integer (0) рдХреА рдЙрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 
Integer (0) рд╕рд╛рде рд╣реА 
Integer (0) рддреБрд▓рдирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╕рдорд╕реНрдпрд╛ VB2005 / 2008 рдореЗрдВ рд╣реЛрддреА рд╣реИ рдЬрдм рдЖрдк рдЕрд╢рдХреНрдд рд╕рд╛рд░реНрдердХ рдкреНрд░рдХрд╛рд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:
  Module Program Sub Main() Dim i = If(False, 1, Nothing) End Sub End Module 
github рд╕реНрд░реЛрдд рдХреЛрдбрд╕рдордЭ рдореЗрдВ рдЖрдпрд╛, рдХрд┐ рдХреЛрдИ 
i рдХреИрд╕реЗ рдЯрд╛рдЗрдк рдХрд░ рд╕рдХрддрд╛ рд╣реИ 
Integer? ( 
Nullable(Of Integer) ( 
Nullable(Of Integer) )ред рд▓реЗрдХрд┐рди рдпрд╣ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ 
Nothing рд╕рдВрджрд░реНрдн рд╕реЗ рдкреНрд░рдХрд╛рд░ 
Nothing рдорд┐рд▓рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рдкреНрд░рдХрд╛рд░ рджреВрд╕рд░реЗ рдСрдкрд░реЗрдВрдб рд╕реЗ рдЖрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рд╕рд░рд▓ 
non-nullable Integer (рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, 
Nothing рдХрднреА рднреА рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд╣реАрдВ рд╣реИ)ред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреЗрдЦрдиреЗ рдХрд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рд╣реИ:
 Module Program Sub Main() M(Nothing) End Sub Sub M(i As Integer) Console.WriteLine("Non-nullable") End Sub Sub M(i As Integer?) Console.WriteLine("Nullable") End Sub End Module 
github рд╕реНрд░реЛрдд рдХреЛрдбрдлрд┐рд░, рдпрд╣рд╛рдБ, рд╕рд╣рдЬ рд░реВрдк рд╕реЗ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ 
Nothing "рдЕрд╢рдХреНрдд" рд╕рдВрдХреЗрдд 
Nothing рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рднрд╛рд╖рд╛ рдПрдХ рдЕрдзрд┐рднрд╛рд░ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИ рдЬреЛ рдЕрд╢рдХреНрдд рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ ( 
non-nullable , рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ "рд╕рдмрд╕реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ" рд╣реИ)ред рдХрдо рд╕реЗ рдХрдо, рдпрд╣ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ C # рдореЗрдВ рдЕрд╢рдХреНрдд рдХреА рддрд░рд╣, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкрд░ 
Nothing рд▓рд╛рдЧреВ 
Nothing рд╣реИ, рдФрд░ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдкрд╡рд╛рдж рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдлрд┐рд░ рд╕реЗ рдЧрд▓рдд рд╡рд┐рдЪрд╛рд░ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ 
Nothing = null (Is null?) ред
Nuance: C # 7.1 рдореЗрдВ рдПрдХ рдирдпрд╛ 
default рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ VB рдореЗрдВ 
Nothing рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк n рдХреЗ рдмрдЬрд╛рдп 
default C # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдКрдкрд░ рджрд┐рдП рдЧрдП рд╕рднреА рддреАрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, 
рддреЛ рдЖрдкрдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдорд┐рд▓рддрд╛ рд╣реИ ред
рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ? рдХрдИ рд╕реБрдЭрд╛рд╡ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдХреЛрдИ рдирд╣реАрдВ рдЬреАрддрд╛ рд╣реИ:
- рд╣рд░ рдмрд╛рд░ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдЦрд╛рдПрдВ NothingрдПрдХ рд╕рд╛рд░реНрдердХ рдкреНрд░рдХрд╛рд░ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдпрд╣nullрдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рдХрд╛рд░ рдореЗрдВnullрдирд╣реАрдВ рд╣реИред
- рдЦреВрдмрд╕реВрд░рддреА рд╕реЗ 0,0.0,ChrW(0),False,#1/1/0001 12:00:00 AM#ChrW(0)#1/1/0001 12:00:00 AM#рдпрд╛New T(рдХрд┐рд╕реА рднреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди) рдХрд╛ рд╣рд░ рдмрд╛рд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░реЗрдВ, рдЬрдм рднреА рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рдЗрд╕рдХрд╛ рдорд╛рди рдПрдХ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛ рдКрдкрд░ рд╕реВрдЪреАрдмрджреНрдз рд╣реИред
- рдПрдХ рдирдпрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЕрд░реНрде рдЬреЛрдбрд╝реЗрдВ "рдЕрд╢рдХреНрдд, рдирд╣реАрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ!" Nullрдпрд╛Nothing?
- рдкреНрд░рддреНрдпрдп (?) рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдирдпрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЬреЛрдбрд╝реЗрдВ, рдЬреЛ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╢рдХреНрдд рдореЗрдВ рдорд╛рди рдХреЛ рд▓рдкреЗрдЯрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП If(False, 0?, Nothing)
- рдмрд┐рд▓реНрдЯ-рдЗрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд╢рдХреНрдд рд░реВрдкрд╛рдВрддрд░рдг рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рд╡реЗ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХреЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, If (False, CInt? (0), Nothing)
рдореИрдВ рдЖрдкрдХреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ / рдпрд╛ 
рдЯреНрд╡рд┐рдЯрд░ рдкрд░ рд╕реБрдирдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред
рдЗрд╕рд▓рд┐рдП рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ:
- рдкреВрд░реНрд╡ рд╕рдордп - VB6 рдФрд░ VBA рдореЗрдВ "рдирдерд┐рдВрдЧ", "рдирд▓", "рдЦрд╛рд▓реА" рдФрд░ "рдорд┐рд╕рд┐рдВрдЧ" рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЗрдВред
- 2002 - VB.NET рдореЗрдВ рдХреЗрд╡рд▓ Nothing(рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрджрд░реНрдн рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди), рдФрд░ C # рдореЗрдВ - рдХреЗрд╡рд▓nullред
- 2005 - рд╕реА # default(T)(рдЯрд╛рдЗрдкTрдХрд╛ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рдиdefault(T)рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдирдП рдЬреЛрдбрд╝реЗ рдЧрдП рдЬреЗрдирд░рд┐рдХ рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рдПрдХ рдореВрд▓реНрдп рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдПрдХ рд╕рдВрджрд░реНрдн рдкреНрд░рдХрд╛рд░ рдпрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ; VB рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯNothingрджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрдВрдж рд╣реИред
- 2017 - C # default(рд╕рдВрджрд░реНрдн рдореЗрдВdefaultрдорд╛рди) рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХрдИ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИрдВ рдЬрд┐рдирдореЗрдВTрдирд┐рд░реНрджрд┐рд╖реНрдЯTрдЕрдирд╛рд╡рд╢реНрдпрдХ рдпрд╛ рдЕрд╕рдВрднрд╡ рд╣реИ
VB 
Null рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ (рдпрд╛ рд╕рдорддреБрд▓реНрдп) рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рд╡рд┐рд░реЛрдз рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐:
- рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рддреЛрдбрд╝рдиреЗ рд╡рд╛рд▓рд╛ рд╣реЛрдЧрд╛ред
- рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╕рдВрджрд░реНрдн рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЛрдВ рдХрд╛ рдорддрд▓рдм рд╣реЛрдЧрд╛ред
- рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдмрд╣реБрдд рдЕрд╕рдВрдЧрдд рд╣реЛрдЧрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Nothing?); рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЖрдкрдХреЛNothingрдФрд░Nothing?рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╝реЛрд░ рд╕реЗ рдмрд╛рдд рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИNothing?рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдХреБрдЫ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред
- рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдмрд╣реБрдд рдмрджрд╕реВрд░рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛ред Nothing?)ред
- рдЕрд╢рдХреНрдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА NothingрдмрдВрджNothing, рдФрд░ рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмреЗрдорд╛рдиреА рд╣реЛрдЧрд╛ред
- рд╣рд░ рдЬрдЧрд╣, рд╕рднреА рджрд╕реНрддрд╛рд╡реЗрдЬ рдФрд░ рд╕рднреА рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдирдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рдЪрд▓рд┐рдд NothingрдШреЛрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
- NothingрдФрд░- NullрдЕрднреА рднреА рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рджреЗрд░ рд╕реЗ рдмрд╛рдзреНрдпрдХрд╛рд░реА, рдкрд░рд┐рд╡рд░реНрддрди, рдЖрджрд┐ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдПрдХ рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░реЗрдВрдЧреЗред
- рдпрд╣ рдЫреБрд░рд╛ рдШреЛрдВрдкрдиреЗ рдореЗрдВ рдмрдВрджреВрдХ рдХреА рддрд░рд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдХреБрдЫ рдЗрд╕ рддрд░рд╣ред
рдСрдлрдЯреЙрдкрд┐рдХ (рд▓реЗрдХрд┐рди рд╕рдВрдмрдВрдзрд┐рдд)рдпрд╣рд╛рдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдКрдкрд░ рджрд┐рдП рдЧрдП рджреВрд╕рд░реЗ рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдорд╛рди рдХреЗ:
 Module Program Sub Main() Dim i As Integer? = If(False, 1, Nothing) Console.WriteLine(i) End Sub End Module 
github рд╕реНрд░реЛрдд рдХреЛрдбрдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо 0. рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдареАрдХ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рджреВрд╕рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдЕрд▓рдЧ, рдпрджреНрдпрдкрд┐ рд╕рдВрдмрдВрдзрд┐рдд, рд╕рдорд╕реНрдпрд╛ рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рд╕рд╣рдЬ рд░реВрдк рд╕реЗ, рдХреНрдпрд╛ 
Dim i as Integer? = If(False, 1, Nothing) Dim i as Integer? = If(False, 1, Nothing) Dim i As Integer? : If False Then i = 1 Else i = Nothing рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ 
Dim i As Integer? : If False Then i = 1 Else i = Nothing Dim i As Integer? : If False Then i = 1 Else i = Nothing ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рд╢рд░реНрдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 
(If) рдЕрдкрдиреЗ рдСрдкрд░реЗрдВрдб рдХреЛ рдЕрдВрддрд┐рдо рдкреНрд░рдХрд╛рд░ рдХреА "рд╕реВрдЪрдирд╛" рд╕реЗ рдЧреБрдЬрд░рддреА рдирд╣реАрдВ рд╣реИред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдпрд╣ VB рдореЗрдВ рдЙрди рд╕рднреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдмрд╛рдд рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЕрдВрддрд┐рдо (рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ) рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреНрдпрд╛ рд╣реИ ( 
Nothing , 
AddressOf , 
AddressOf рдПрдХ рд╕рд░рдгреА, рд▓рдВрдмреЛрджрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдФрд░ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рддрд╛рд░) рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЧреИрд░-рд╕рдВрдХрд▓рди рд╕реЗ рд▓реЗрдХрд░ рдЪреБрдкрдЪрд╛рдк рдЧрд▓рдд рдорд╛рди рдмрдирд╛рдиреЗ рддрдХ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рдеред рдЬреЛрд░ рд╕реЗ рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдлреЗрдВрдХрдирд╛ред рдпрд╣рд╛рдБ рдПрдХ рдЕрдкреНрд░рдпреБрдХреНрдд рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
 Module Program Sub Main() Dim i As Integer? = If(False, 1, Nothing) Console.WriteLine(i) Dim operation As Func(Of Integer, Integer, Integer) = If(True, AddressOf Add, AddressOf Subtract) End Sub Function Add(left As Integer, right As Integer) As Integer Return left + right End Function Function Subtract(left As Integer, right As Integer) As Integer Return left - right End Function End Module 
github рд╕реНрд░реЛрдд рдХреЛрдбрдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, 
If рдпрд╣ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рджреЛрдиреЛрдВ 
AddressOf рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ 
AddressOf рд░реВрдк рд╕реЗ 
Func(Of Integer, Integer, Integer) рдкреНрд░рддрд┐рдирд┐рдзрд┐рдпреЛрдВ 
Func(Of Integer, Integer, Integer) рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИред
, 
Nothing null (), 
Nothing nullability () 
If(,,) Nothing ( ) () тАФ , 
.
47. ;
┬л3┬╗:
 Module Program Sub Main() Dim i As Integer = 3 M((i)) Console.WriteLine(i) End Sub Sub M(ByRef variable As Integer) variable = -variable End Sub End Module 
GitHubC# ┬л-3┬╗. , VB тАФ , 
. , 
M(3) , 
M(i) , 
i , . C# ( ) , M .
? VB 
. Quick Basic (Copyright 1985), . , 
2002 , .
тДЦ1: ┬л ┬╗ , Visual Basic .NET.
тДЦ2: Roslyn ( , 
( ) ( )), : . C# , 
((a + b) * c a + (b * c)) . , C#, C++, , , , . : ┬л VB?┬╗ ┬л C#?┬╗ 
source.roslyn.io тАФ 
BoundParenthesized VB C#. , , .
48. Me тАФ
VB.NET 
Me . , - , тАФ , Me Structure . Me . C# 
this , 
this .
49.
VB, , :
 Class C Sub M() Extension() End Sub End Class Module Program Sub Main() End Sub <Runtime.CompilerServices.Extension> Sub Extension(c As C) End Sub End Module 
GitHubC# ( something.Extension). , C#, , 
this.Extension() .
? , 
'Me.' , , , , . VB.NET . , .
50. (Static imports will not merge method groups)
VB ┬л ┬╗ (Java-, C# VB). , 
Imports System.Console WriteLine() . 2015 C# . VB Shared- , 
System.Console System.Diagnostics.Debug , 
WriteLine , . C# , , .
? , , VB , C# ( ). , ( , ), тАж , .
, VB , VB , , , , , ( 
#6 ). VB . , VB 2002 .
51 52. (Partial-name qualification & Smart-name resolution)
:
- , тАФ ( ). SystemSystem.Windows.FormsтАФ , ,SystemSystem.WindowsSystem.WindowsSystem.Windows.Forms.
- , , , . SystemWindows,WindowsForm.
, , . . VB Imports , 
using C# .
, VB 
System , 
System , 
System . , . , 
ExtensionAttribute , 
<Runtime.CompilerServices.Extension> <System.Runtime.CompilerServices.Extension> .
C# . 
using System System.Threading Threading .
, C# , . , 
System , 
System.Threading Threading . , , , , .
, , VB, C# , 
Imports / 
using , C# using , , using .
(Quantum Namespaces) ( ), ! VB , . , 
System ComponentModel System.Windows.Forms ComponentModel ? 
ComponentModel . , 
ComponentModel.PropertyChangedEventArgs , ( , ). 
System.Windows.Forms (, , , , ), (ambiguity errors).
VB2015 (Smart Name Resolution), 
System System.Windows.Forms ComponentModel , , 
System.ComponentModel System.Windows.Forms.ComponentModel , . , , , , . , , , .. 
ComponentModel.PropertyChangedEventArgsSystem.ComponentModel.PropertyChangedEventArgs , 
System.Windows.Forms.ComponentModel.PropertyChangedEventArgs . , .
, 
Windows , ( ) ( ) ( ). 
WinForms/WPF UWP .
53. Add
#33 , VB - , . , , тАФ , :
 Class Contact Property Name As String Property FavoriteFood As String End Class Module Program Sub Main() Dim contacts = New List(Of Contact) From { {"Leo", "Chocolate"}, {"Donnie", "Bananas"}, {"Raph", "The Blood of his Enemies"}, {"Mikey", "Pizza"} } End Sub <Runtime.CompilerServices.Extension> Sub Add(collection As ICollection(Of Contact), name As String, favoriteFood As String) collection.Add(New Contact With {.Name = name, .FavoriteFood = favoriteFood}) End Sub End Module 
GitHubC# , Roslyn C#, . , ( 
, ), VS2015.
54. ,
, VB 
Dim buffer(expression) As Byte Dim buffer = New Byte(expression) {} expression + 1 .
Microsoft BASIC, 
DIM ( dimension тАФ ). , , , : 0 expression. Microsoft BASIC 1 ( , 1984), ( ), 2002 .
, - , , VB , BASIC C , , C, C- . , 
buffer(10) 0 10, 9!
55. VB - , C#
, . , VB ( ) , тАФ . :
- CType({1, 2, 3}, Short())- CType(New Integer() {1, 2, 3}, Short ()),- Integer- Short.
- CType({1, 2, 3}, Short())- New Short() {1, 2, 3}. .
, , VB , C#. , :
- Dim empty As Integer() = {}
:
- Dim array As Predicate(Of Char)() = {AddressOf Char.IsUpper, AddressOf Char.IsLower, AddressOf Char.IsWhitespace}
( ):
- Dim byteOrderMark As Byte() = {&HEF, &HBB, &HBF} '.
, 
IList(Of T) , 
IReadOnlyList(Of T) , 
ICollection(Of T) , 
IReadOnlyCollection(Of T) IEnumerable(Of T) , , , 
ParamArray IEnumerable .
? , VB. , . 2008 VB C# ┬л┬╗ {}, - ( , , ). , , , + , . .
56.
, LINQ. , .
, , 
.
57. CType, DirectCast C#
/ VB C#.
VB 
CType :
- ;
- ( );
- , , LongInteger(. ┬л┬╗);
- (unboxes) ;
- ;
- ( CTypeDynamic).
VB 
DirectCast :
- ;
- ;
- ( Integer Byte);
- ;
- ( );
- .
C# тАФ 
(Type)expression :
CType C# , . , . VB C# , IL . 
, C#, , . .
, 
CType , (, ). 
CType , 
DirectCast , . , , IL : 
Object ( 
ValueType ) CLR ┬лunbox┬╗ VB-, , (, 
Short Integer ). , , C#. . , .
? . , , , , .
58. ┬л┬╗
, , 
5 Mod 2 * 3 5 VB, ┬л┬╗ C# 
5 % 2 * 3 3.
, , . , (, (\) VB), , , 
. 
!59. ; + & ; + VB <> + C#
, + () & () VB + C#.
String :VB- тАЬ1тАЭ + 1 = 2.0
- тАЬ1тАЭ & 1 = тАЬ11тАЭ
C#, + &VB- тАЬobj: тАЬ + AppDomain.CurrentDomain ' Error: + not defined for String and AppDomain.
- тАЭobj: тАЬ & AppDomain.CurrentDomain ' Error: & not defined for String and AppDomain.
- тАЭobj: тАЬ + CObj(AppDomain.CurrentDomain) ' Exception, no + operator found.
- тАЭobj: тАЬ & CObj(AppDomain.CurrentDomain) ' Exception, no & operator found.
C#- ┬лobj: ┬╗ + AppDomain.CurrentDomain == ┬лobj: ┬╗ + AppDomain.CurrentDomain.ToString()
- ┬лobj: ┬╗ + (object)AppDomain.CurrentDomain == ┬лobj: ┬╗ + AppDomain.CurrentDomain.ToString()
- ┬лobj: ┬╗ + (dynamic)AppDomain.CurrentDomain == ┬лobj: ┬╗ + AppDomain.CurrentDomain.ToString()
:VB- 1 + 1 = 2
- 1 & 1 = тАЬ11тАЭ
C#String Enum:VB- тАЬToday: тАЭ + DayOfWeek.Monday ' Exception: String ┬лToday: ┬╗ cannot be converted to Double.
- тАЬToday: тАЭ & DayOfWeek.Monday = тАЬToday: 1тАЭ
- тАЬToday: тАЭ & DayOfWeek.Monday.ToString() = тАЬToday: MondayтАЭ
C#- ┬лToday: ┬╗ + DayOfWeek.Monday == ┬лToday: Monday┬╗
: , + VB, - . + , , - . рдХреНрдпреЛрдВ? :
- тАЬ10тАЭ тАФ тАЬ1тАЭ = 9.0,
- тАЬ5тАЭ * тАЬ5тАЭ = 25.0,
- тАЬ1тАЭ << тАЬ3тАЭ = 8,
- тАЬ1тАЭ + 1 = 2.0,
- тАЬ1тАЭ + тАЬ1тАЭ = тАЬ11тАЭ
. тАФ .
: +, 
. , &, , ( 
, ). , , .
60. : 3 / 2 = 1,5
тАФ : 
┬л ?┬╗ ред ┬л┬╗. : 
┬л . ?┬╗VB C#.
C, , , 
┬л 5 9?┬╗ , \. , , , , 0 ( , - 
INumeric ).
61. ^ Math.Pow
Math.Pow . , . , ( 
custom ) ( , 
System.Numerics.BigInteger ).
: F# **, VB F# : 
op_Exponent op_Exponentiation . F# 
Pow . . , .
62. =/<> /
C# '==' () , , ( ). VB . VB ( 
Is/IsNot ) .
: - Roslyn , . . . VB , = , C# , , , .
63. =/<> ( )
VB .
-, ( ) - ( ), , 
Option Compare Binary Option Compare Text . 
Option Compare Binary , , VS.
( ), , 
API. :
- /: тАЬAтАЭ = тАЬaтАЭ/тАЬAтАЭ <> тАЬaтАЭ
- : тАЬAтАЭ > тАЬaтАЭ
- Select Case: Select Case тАЬAтАЭ : Case тАЬaтАЭ
:
- Equals: тАЬAтАЭ.Equals(тАЬaтАЭ)
- Contains: тАЭAтАЭ.Contains(тАЬaтАЭ)
- Distinct: From s In {тАЬAтАЭ, тАЬaтАЭ} Distinct
, , : VB . , 
Option Compare , ┬лEmpty┬╗.
 Module Program Sub Main() Dim s As String = Nothing If s = "" Then Console.WriteLine("Empty") End If End Sub End Module 
GitHubs = "" VB тАФ 
String.IsNullOrEmpty(s) .
, , , , , . , , .
? Option Compare Text , , . , , .
, , , , .
, , . , . , , (collation) SQL Server, . , VB VB6, VBA Office, Excel Access, VBScript Windows, -, -тАж . , , .NET API , Option Compare Text, . , .NET API, .
null, , . VB6 . 
String "". , VB 
String . VB, 
Left Mid , 
String . null . 
Len(CStr(Nothing)) = 0 Left(CStr(Nothing) , 
5) = "" , 
CStr(Nothing).Length CStr(Nothing).Trim() .
, 
? ред ( ).
:, , , . ! VB , , 
"String A" = "String B" , 
Microsoft.VisualBasic.CompilerServices.Operators.CompareString , - , , . LINQ- . , VB ( ). , , - , . LINQ-to-SQL, LINQ-to-Entities , Microsoft. , VB , !
, C#, VB, LINQ . : 1) , VB , , 2) , VB , , LINQ-. , VB ().
: , ┬л API┬╗. 
Option Compare VB, 
InStr.Replace Microsoft.VisualBasic.Strings . , ?
, , , ? , , , : , , .
64. Nullable ( null )
VB C# - nullable. , (null-propagation).
SQL, , , null. , (, +), null, null. 
"?." : 
obj?.Property obj null, null, .
nullable , VB, C# . - : .
VB, nullable , null, null . 1 + null null null + null null. , (, = <>) C#:
- VB, Is/IsNot,Boolean?
- C# (==, !=, >, <, >=, <=) boolbool?
VB ( nullable ) null 
null . 
Boolean = 
Boolean? , 
True , 
False null . 
. C# 
non-nullable bool , 
.
, 
. null. VB 
NULL = 
NULL тАФ 
NULL , TRUE.
, :

. 
Null , , , C# .
. C# VB, 
┬л null?┬╗ C# 
(if (value == null)) . VB , VB (=/<>) 
(Is/IsNot) , VB 
Is Nothing non-nullable Boolean .
, VB null, null. 
And/AndAlso Or/OrElse .
Integer? ( ), VB, C# null, :
- 1 AND NULL NULL
- 1 OR NULL NULL
Boolean? , VB .
- FALSE AND NULL FALSE
- TRUE OR NULL TRUE
- TRUE AND NULL NULL
- FALSE OR NULL NULL
, 
True/False , , null. , 
AndAlso OrElse .
C# (&&/||) (&/|) 
nullable boolean (bool?) . , , non-nullable boolean nullable boolean .
?VB , - :
 Imports System.ComponentModel Class BindableRange Implements INotifyPropertyChanged Property _EndDate As Date? Property EndDate As Date? Get Return _EndDate End Get Set(value As Date?)  
GitHub, , , , ┬лEndDate change┬╗ . , , 
VB null ? , 
EndDate , , , 
Nothing .
VB : 
┬л, , . ┬╗ :
 If value <> _EndDate Then _EndDate = value RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(NameOf(EndDate))) End If 
! . , 
non-nullable . , 
. , :
 If value Is Nothing AndAlso _EndDate Is Nothing Then Return If value <> _EndDate Then Return 
?, C# , VB. ( nullable , ), , null.
null тАФ 
┬л┬╗ ┬л ┬╗ . .
null ┬л ┬╗ ┬л┬╗ . , , : comparer, , comparer . Roslyn, 
Optional(Of T) , , , null, , .
, NULL ┬л ┬╗, VB :
- , ┬л , ?┬╗ ┬л ┬╗.
- : ┬л , ?┬╗ ┬л ┬╗.
, , 
SQL- . , NULL SQL , NULL. . , , NULL . , . , , ( ). , , , , , NULL , SQL ( ).
VB. 
nullable 2008 , VB ?LINQ to SQL
VB , , , , , , LINQ- . !
. SQL Server, , 
SET ANSI_NULLS OFF , SQL- C#, 
WHERE Column = NULL . , , OFF ( ). SQL Server ( ) . : 
┬л ? . , - Option ANSI_NULLS Off VB.NET?┬╗ ред :

, , , , , SQL Server, VB.
рдХреБрдЫ рдЗрд╕ рддрд░рд╣ред
65. 1:1
, VB , , , . VB - , .
, , , , . VB , , , , , VB .
9.8.4 .
66. Function() a = b () => a = b
. , 
() => expression C# 
Function() expression VB. 
Function() -, - , VB. 
a = b , 
a b ( 
Boolean ), 
b . - (delegate relaxation) VB ( -) Sub- ( ). . 
() => a = b C# VB тАФ 
Sub() a = b . тАФ - 
, .
=, , . ( 
Sub -) , ( 
Function -) .
67. Async Function async void
C# 
async -, , , 
Task void , , 
Task , .
VB.NET , .. 
void Async Async Sub , 
Task Task(Of T) тАФ 
Async Function . , , VB, (relaxing) 
Task Async void . 
Async Sub , , .
68. () VB
, VB:
 Class Foo  
GitHubVB, 
C#. -, 
Foo Select , , 
Where . 
Select , , 
Select , 
Integer . C# , 
.Where ( 
Select ). , , .
LINQ API. , VB C#, . , C# , ┬л ┬╗, , , , . - , ┬л┬╗ , , -.
, VB 
, , C# , .
, Roslyn, : 
┬л (range variables)?┬╗ ┬л ?┬╗ ред . , VB , 
Let , C# тАФ . , VB, C# 2012 , :
 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace CSharpExamples { struct Point { public int X { get { return 0; } } public int Y { get { return 0; } } } class Foo { public IEnumerable<Point> Select<T>(Func<string, T> selector) { return new Point[0]; } } static class Program { static void Main(string[] args) { var c = new Foo(); var q = from X in c let Y = "" select Y.CompareTo(-1); } } } 
GitHub, тАФ ? X, тАФ 
string . 
let Y , string. , Point, 
X Y , , 
int X Y , ┬л┬╗ . 
Y select , 
int int `, тАж .
, 
┬л ?┬╗ ред VS2015 C# , ┬л┬╗. , Roslyn C#, . , ( , ), - .
? , , , . , , VB C# .
69 70. As From cast ; 'As'
( , тАж)
From x As Integer In y VB, , 
from int x in y C#.
-, C# , ( ) . 
.Cast<T>() . VB , , , , .
-, , 
.Cast ( ). , , , 
.Cast .Select .
? . VB . , 
For Each x As T In collection , 
As T . 
From As For Each ( , 
As ).
71-75. Select , ,
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
- From x In y Where x > 10. ,- Select.
- From x In y Select x Where x > 10.
- From x In y Select x,- From x In y Select x = x,- xтАФ- x,- xтАФ- Select.- Select- From x In y Select z = x.ToString(),- x.
- From x In y Select x.FirstName,- From x In y Select FirstName = x.FirstName.
- From x In y Select x.FirstName, x.LastNameтАФ- From x In y Select New With {x.FirstName, y.LastName}, , .- IEnumerable(Of $AnonymousType$), .
? ( 
Amanda Silver ). !
- , Select, SQL ,Select, . LINQ VB Select , SQL, From .
- , , .
- , Select, SQL, - - . VB comma separated ( ) -.
- , Select, , , , , , , тАФ .
? , , - , , :
 Module Program Sub Main() Dim numbers = {1, 2, 3}  
GitHubBC36606: Range variable name cannot match the name of a member of the 'Object' class BC30978: Range variable 'тАж' hides a variable in an enclosing block or a range variable previously defined in the query expression тАФ , 
Object , , , , . ( 
n.ToString() ), . , .
76+.
. тАж тАж . тАж 20-25 ( 
тАФ .. ).
рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХрд╛ рдорд┐рдирдЯред 15-16 - .NET- DotNext 2019 Piter . , . , . .