рдирдорд╕реНрдХрд╛рд░, рд╣реЗрдмреНрд░! рдореИрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рд▓реЗрдЦ "рдХреНрдпрд╛ рдЬрдВрдЧ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ?" рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИред рд▓реЗрдЦрдХ рдиреЛрд░рд╛ рдХреЛрдбреНрд╕ред
рдореИрдВрдиреЗ рдХрдИ рдЧрд▓рддрдлрд╣рдорд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рднрд╛рд╖рд╛ рдХрд╛ рдорддрд▓рдм рдХреНрдпрд╛ рд╣реИ, "рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рд┐рд╕реНрдЯрдо рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛" рдХреЗ рд░реВрдк рдореЗрдВ рд░рд╕реНрдЯ рднрд╛рд╖рд╛ рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдФрд░ рд╢реБрджреНрдзрддрд╛ рдФрд░ рдЗрд╕рдХреЗ рдкреНрд░рдЪрд╛рд░ рдХреЗ рд▓рд┐рдПред рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдЯреНрд╡реАрдЯ рдореЗрдВ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╕рдЪ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗред рдЗрд╕ рддрд░рд╣ рдореИрдВ рдЙрд╕реЗ рджреЗрдЦрддрд╛ рд╣реВрдВред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреАрд╡рд░реНрдб рдЙрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдмрдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд░рд╕реНрдЯ рдХреЛрдб рдХреЛ рд╕рд╣реА рд░рдЦрддрд╛ рд╣реИ ред рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ "рд╕реБрдкрд░рдкрд╛рд╡рд░" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдбреЗрд░реЗрдлреЗрд░рд┐рдВрдЧ рдкреЙрдЗрдВрдЯрд░реНрд╕ред рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдореВрд▓ рд░реВрдк рд╕реЗ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рджреБрдирд┐рдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рдЕрдореВрд░реНрддрддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ Rust рдХреЛрдб рдЗрди рдЕрдореВрд░реНрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВ рдФрд░ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдореЗрдореЛрд░реА рдПрдХреНрд╕реЗрд╕ рд╕реЗ рдмрдЪ рд╕рдХреЗрдВред
рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЧрд╛рд░рдВрдЯреА
рдЬрдВрдЧ рдЕрдкрдиреЗ рдореВрд▓ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрддрд╛ рд╣реИред рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рднрд╛рд╖рд╛ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХрд╛ рдЕрд░реНрде рд╣реИ ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдФрд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдХрд░реНрддрд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рджреМрд░рд╛рди рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЕрд░реНрдереЛрдВ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд░реВрд╕реНрдЯ рдХрдм рдФрд░ рдХрд┐рди рдореВрд▓реНрдпреЛрдВ рддрдХ рдкрд╣реБрдБрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рдЙрдиреНрдирдд рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рддрдм рдХрдВрдкрд╛рдЗрд▓рд░ рдкреНрд░рддреНрдпреЗрдХ рд░рд╕реНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рд╕рдХреЗ рдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рд╕рд╣реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИред
рдЕрдЬрдЧрд░ рд╕реБрд░рдХреНрд╖рд╛
рдЖрдЗрдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЬрдЧрд░ рдХреЛ рд▓реЗрдВред рд╢реБрджреНрдз рдкрд╛рдпрдерди рдХреЛрдб рд╕реНрдореГрддрд┐ рдХреЛ рджреВрд╖рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╕реАрдорд╛рдУрдВ рд╕реЗ рдкрд░реЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реВрдЪреА рдЖрдЗрдЯрдо рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЬрд╛рдВрдЪ рд╣реИ; рд▓рд┐рдВрдХ рджреНрд╡рд╛рд░рд╛ рджрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рд▓рдЯрдХрддреЗ рд▓рд┐рдВрдХ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд┐рдиреЗ рдЬрд╛рддреЗ рд╣реИрдВ; рдкреЙрдЗрдВрдЯрд░реНрд╕ рдХреЗ рд╕рд╛рде рдордирдорд╛рдирд╛ рдЕрдВрдХрдЧрдгрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред
рдЗрд╕рдХреЗ рджреЛ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХрдИ рдкреНрд░рдХрд╛рд░ "рд╡рд┐рд╢реЗрд╖" рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╢реБрджреНрдз рдкрд╛рдпрдерди рдореЗрдВ рдПрдХ рдкреНрд░рднрд╛рд╡реА рд╕реВрдЪреА рдпрд╛ рд╢рдмреНрджрдХреЛрд╢ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╕реАрдкреАрдереЙрди рджреБрднрд╛рд╖рд┐рдпрд╛ рдХрд╛ рдЙрдирдХрд╛ рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред рджреВрд╕рд░реЗ, рдмрд╛рд╣рд░реА рдХрд╛рд░реНрдпреЛрдВ (рдкрд╛рдпрдерди рдореЗрдВ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝рдВрдХреНрд╢рди), рдЬрд┐рд╕реЗ рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ ctypes рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рднрд╛рд╖рд╛ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдЧрд╛рд░рдВрдЯреА рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИред
рдПрдХ рдЕрд░реНрде рдореЗрдВ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдкрд╛рдпрдерди рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╕рднреА рдЪреАрдЬреЗрдВ рд╕реНрдореГрддрд┐ рддрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдкрд╣реБрдВрдЪ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддреА рд╣реИрдВред
рдЬрдВрдЧ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛
рдЬрдВрдЧ рд╕реБрд░рдХреНрд╖рд╛ рднреА рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рд╕реА рдореЗрдВ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рдПрдХ рдЪрд╛рд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ: рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреАрд╡рд░реНрдбред рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ Rust рдореЗрдВ рдореВрд▓рднреВрдд рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдПрдВ рдЬреИрд╕реЗ Vec, VecDeque, BTreeMap рдФрд░ String, Rust рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред
рдЖрдк рдкреВрдЫ рд╕рдХрддреЗ рд╣реИрдВ: "рд▓реЗрдХрд┐рди, рдЕрдЧрд░ рд░реБрд╕реНрдЯ рдЕрдкрдиреЗ рдХреЛрдб рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рдЪрд╛рд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рдЪрд╛рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ Rust рдореЗрдВ рд╕рдм рдХреБрдЫ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛рдПрдЧрд╛?"
рдПрдХ рд╢рдмреНрдж рдореЗрдВ, рдкреНрд░рд┐рдп рдкрд╛рдардХ, рд╣рд╛рдВ , рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдЬрд┐рд╕ рддрд░рд╣ рдпрд╣ рдкрд╛рдпрдерди рдореЗрдВ рдерд╛ред рдЖрдЗрдП рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рджреЗрдЦреЗрдВред
рд╕реБрд░рдХреНрд╖рд┐рдд рдЬрдВрдЧ рдореЗрдВ рдХреНрдпрд╛ рдордирд╛ рд╣реИ?
рдЬрдВрдЧ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ: рд╣рдо рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕реЛрдЪрддреЗ рд╣реИрдВред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╕реБрд░рдХреНрд╖рд┐рдд рдЬрдВрдЧ рдХрд╛рд░реНрдпрдХреНрд░рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
- рдПрдХ рдкреЙрдЗрдВрдЯрд░ рдХреЛ рдбреАрдлреЗрд░ рдХрд░рдирд╛ рдЬреЛ рдХрд┐ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЕрд╢рдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдВрдХреЗрдд рдирд╣реАрдВ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдХрд╣реАрдВ рднреА рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ), рд╕реАрдорд╛рдУрдВ рдФрд░ / рдпрд╛ рд╡рд┐рднрд╛рдЬрди рддреНрд░реБрдЯрд┐рдпреЛрдВ (рд╡рд┐рднрд╛рдЬрди рджреЛрд╖) рд╕реЗ тАЛтАЛрдмрд╛рд╣рд░ рдЬрд╛рдиреЗ рдХреА рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ, рдХреЛрдИ рдмрдлрд░ рдУрд╡рд░рдлреНрд▓реЛ рдирд╣реАрдВред рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рднреА рд╣реИ рдХрд┐ рдореЗрдореЛрд░реА рдХреЛ рдлреНрд░реАрдЬ рдХрд░рдиреЗ рдпрд╛ рдореЗрдореЛрд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рдлреНрд░реА рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдХреЛрдИ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рдореЗрдореЛрд░реА рдХреЛ рдлреНрд░реАрдЬ рдХрд░рдиреЗ рдХреЛ рдкреЙрдЗрдВрдЯрд░ рдХреЛ рдбреАрд░реЗрдлреЗрд░реЗрдВрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ) рдФрд░ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рджрдВрдб рдирд╣реАрдВ рд╣реИ ред
- рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдкрд░ рдПрдХ рд╕рд╛рде рдХрдИ рдкрд░рд╕реНрдкрд░ рд╕рдВрджрд░реНрдн рдпрд╛ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдореЗрдВ рдкрд░рд╕реНрдкрд░ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рдФрд░ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕рдВрджрд░реНрдн рд░рдЦреЗрдВ ред рдпрд╣реА рд╣реИ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХрд╛ рдПрдХ рдкрд░рд╕реНрдкрд░ рд╕рдВрджрд░реНрдн рд╣реИ, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕рдВрджрд░реНрдн рд╣реИ, рддреЛ рдпрд╣ рддрдм рддрдХ рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ рдЬрдм рддрдХ рдЖрдк рдЗрд╕реЗ рдирд╣реАрдВ рд░рдЦрддреЗред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рд╕реБрд░рдХреНрд╖рд┐рдд рдЬрдВрдЧ рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛ рджреМрдбрд╝ рдХреЛ рдмрд╛рдзреНрдп рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдПрдХ рдЧрд╛рд░рдВрдЯреА рд╣реИ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдиреНрдп рд╕реБрд░рдХреНрд╖рд┐рдд рднрд╛рд╖рд╛рдПрдВ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреА рд╣реИрдВред
Rust рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдпрд╛ рдмреАрдЬреАрдп рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдиреНрдХреЛрдб рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдорд╛рди / рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ / рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк / рдкрд░рд┐рдгрд╛рдо <T, E> рддреНрд░реБрдЯрд┐ / рд╕рдлрд▓рддрд╛, рдпрд╛ рд╕рдВрджрд░реНрдн рдФрд░ рдЙрдирдХреЗ рдЬреАрд╡рдирдХрд╛рд▓ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдФрд░ T & mut T рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдПрдХ рдЖрдо (рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп) рд▓рд┐рдВрдХ рдФрд░ рдПрдХ рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ (рдореНрдпреВрдЯреЗрдмрд▓) рд▓рд┐рдВрдХ рдФрд░ 'рдПрдХ рдЯреА рдмрдирд╛рдо рдФрд░' рдмреА рдЯреА, рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рд╕рд╣реА рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд▓рд┐рдВрдХ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдЫреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдХрдВрдкрд╛рдЗрд▓рд░ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕реНрдорд╛рд░реНрдЯ рд╣реИ) ред
рдЙрджрд╛рд╣рд░рдг
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдХреЛрдб рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдПрдХ рд▓рдЯрдХрддрд╛ рд╣реБрдЖ рд▓рд┐рдВрдХ рд╣реЛрддрд╛ рд╣реИред рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, my_struct рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд░рд╣рддрд╛ рд╣реИ ред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬрд╝ рдХрд╛ рд▓рд┐рдВрдХ рд▓реМрдЯрд╛рдПрдЧрд╛ рдЬреЛ рдЕрдм рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдХрдВрдкрд╛рдЗрд▓рд░ (рдФрд░, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рднреА рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдХреИрд╕реЗ) рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
fn dangling_reference(v: &u64) -> &MyStruct {
рдпрд╣ рдХреЛрдб рдРрд╕рд╛ рд╣реА рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рди рдХреЛ рдвреЗрд░ рдкрд░ рд░рдЦрдХрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ (рдмреЙрдХреНрд╕ рд░рд╕реНрдЯ рдореЗрдВ рдмреЗрд╕ рд╕реНрдорд╛рд░реНрдЯ рдкреЙрдЗрдВрдЯрд░ рдХрд╛ рдирд╛рдо рд╣реИ)ред
fn dangling_heap_reference(v: &u64) -> &Box<MyStruct> { let my_struct = MyStruct { value: v };
рд╕рд╣реА рдХреЛрдб рдмреЙрдХреНрд╕ рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЦреБрдж рдХреЛ рдЙрд╕рдХреЗ рд╕рдВрджрд░реНрдн рдХреЗ рдмрдЬрд╛рдп рд▓реМрдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реНрд╡рд╛рдорд┐рддреНрд╡ рдХреЗ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░рддрд╛ рд╣реИ - рдореЗрдореЛрд░реА рдХреЛ рдореБрдХреНрдд рдХрд░рдиреЗ рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА - рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдореЗрдВред рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЛ рджреЗрдЦрддреЗ рд╕рдордп, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреЙрд▓рд┐рдВрдЧ рдХреЛрдб рдмреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдВрдХрд▓рдХ рдЗрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред
fn no_dangling_reference(v: &u64) -> Box<MyStruct> { let my_struct = MyStruct { value: v }; let my_box = Box::new(my_struct);
рдХреБрдЫ рдмреБрд░реА рдЪреАрдЬреЗрдВ рд╕реБрд░рдХреНрд╖рд┐рдд рдЬрдВрдЧ рдореЗрдВ рдордирд╛ рдирд╣реАрдВ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╕рдВрдХрд▓рдХ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдЕрдиреБрдордд рд╣реИ:
- рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдЧрддрд┐рд░реЛрдз рдХрд╛ рдХрд╛рд░рдг
- рд╕реНрдореГрддрд┐ рдХреА рдПрдХ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд░рд┐рд╕рд╛рд╡
- рдлрд╝рд╛рдЗрд▓ рд╣реИрдВрдбрд▓, рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рдпрд╛ рдорд┐рд╕рд╛рдЗрд▓ рд╢рд╛рдлреНрдЯ рдХрд╡рд░ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓
рд░рд╕реНрдЯ рдЗрдХреЛрд╕рд┐рд╕реНрдЯрдо рдХреА рддрд╛рдХрдд рдпрд╣ рд╣реИ рдХрд┐ рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдирддреА рд╣реИрдВ рдХрд┐ рдХреЛрдб рдпрдерд╛рд╕рдВрднрд╡ рд╕рдЯреАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдВрдХрд▓рдХ рдХреЛ рдРрд╕реЗ рдЬрд╝рдмрд░рджрд╕реНрддреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЬрд╣рд╛рдВ рд╕реБрд░рдХреНрд╖рд┐рдд рдореЗрдореЛрд░реА рдПрдХреНрд╕реЗрд╕ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИред
рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдЬрдВрдЧ рдореЗрдВ рдХреНрдпрд╛ рдЕрдиреБрдорддрд┐ рд╣реИ?
рдЕрд╕реБрд░рдХреНрд╖рд┐рдд Rust рдХреЛрдб рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреАрд╡рд░реНрдб рд╡рд╛рд▓рд╛ Rust рдХреЛрдб рд╣реИред рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдХреЛрдб рдХреЗ рдмреНрд▓реЙрдХ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ "рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдХреЙрд▓ рдХреЛрдб рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЙрд╕ рдЗрдВрд╡реЗрд▓реЗрд░реЗрдВрдЯ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░реЗ рдЬреЛ рдЖрдорддреМрд░ рдкрд░ рдХрдВрдкрд╛рдЗрд▓рд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред" рдЬрдм рдХреЛрдб рдХреЗ рдПрдХ рдмреНрд▓реЙрдХ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ "рдХреЛрдб рдХрд╛ рдпрд╣ рдмреНрд▓реЙрдХ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреЛ рд╕реНрдореГрддрд┐ рддрдХ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдкрд╣реБрдВрдЪ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред"
рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХрд╛ рдЕрд░реНрде рд╣реИ "рдЖрдкрдХреЛ рд╕рдм рдХреБрдЫ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ", рдФрд░ рдХреЛрдб рдмреНрд▓реЙрдХ рдкрд░ - "рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдм рдХреБрдЫ рдЬрд╛рдВрдЪ рд▓рд┐рдпрд╛ рд╣реИред"
рдЬреИрд╕рд╛ рдХрд┐ рдж рд░реВрд╕реНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд▓реИрдВрдЧреНрд╡реЗрдЬ рдореЗрдВ рдиреЛрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреАрд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рдмреНрд▓реЙрдХ рдореЗрдВ рдХреЛрдб:
- рдПрдХ рдкреЙрдЗрдВрдЯрд░ рдХреЛ рдбрд┐рд░реЗрд▓ рдХрд░реЗрдВред рдпрд╣ рдПрдХ рдкреНрд░рдореБрдЦ "рдорд╣рд╛рд╢рдХреНрддрд┐" рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рджреЛрд╣рд░реА рд▓рд┐рдВрдХ рдХреА рдЧрдИ рд╕реВрдЪрд┐рдпреЛрдВ, рд╣реИрд╢рдореИрдк рдФрд░ рдЕрдиреНрдп рдореВрд▓рднреВрдд рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
- рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдиреАрдЪреЗред
- рдПрдХ рд╕реНрдереИрддрд┐рдХ рд╕реНрдерд┐рд░ рдЪрд░ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдпрд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВред рд╕реНрдереИрддрд┐рдХ рдЪрд░ рдЬрд┐рдирдХреЗ рджрд╛рдпрд░реЗ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред
- рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВред рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд▓рдХреНрд╖рдгреЛрдВ рдХреЛ рдзреНрд╡рдЬрд╛рдВрдХрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░ рдХреЗ рдХреБрдЫ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдпреЛрдВ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рднреЗрдЬреЗрдВ рдФрд░ рд╕рд┐рдВрдХ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдереНрд░реЗрдб рд╕реАрдорд╛рдУрдВ рдХреЗ рдмреАрдЪ рдПрдХ рдкреНрд░рдХрд╛рд░ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдПрдХ рд╕рд╛рде рдХрдИ рдереНрд░реЗрдб рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдКрдкрд░ рд▓рдЯрдХрдиреЗ рд╡рд╛рд▓реЗ рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдпрд╛рдж рд░рдЦреЗрдВ? рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╢рдмреНрдж рдЬреЛрдбрд╝реЗрдВ, рдФрд░ рдХрдВрдкрд╛рдЗрд▓рд░ рджреЛ рдмрд╛рд░ рд╢рдкрде рд▓реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдкреЙрдЗрдВрдЯрд░ рдСрдкрд░реЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реАрдИрдХреЗ рдкреНрд░рдХрд╛рд░ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рддрддреНрд╡реЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдУрд╡рд░рдлреНрд▓реЛ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдпрджреНрдпрдкрд┐ рдпрд╣ рд╕реЗрдЯ_рд▓реЗрди рдЬреИрд╕реЗ рдСрдкрд░реЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдореЗрдореЛрд░реА рдПрдХреНрд╕реЗрд╕ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо no_dangling_reference рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рднреА рдРрд╕рд╛ рд╣реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЗ рдЕрдиреБрдЪрд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде:
fn manual_heap_reference(v: u64) -> *mut MyStruct { let my_struct = MyStruct { value: v }; let my_box = Box::new(my_struct);
рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╢рдмреНрдж рдХреА рдХрдореА рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рдкреЙрдЗрдВрдЯрд░реНрд╕ рдмрдирд╛рдирд╛ рдмрд┐рд▓реНрдХреБрд▓ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╣ рдПрдХ рдореЗрдореЛрд░реА рд▓реАрдХ рдХрд╛ рдЬреЛрдЦрд┐рдо рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореЗрдореЛрд░реА рд▓реАрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рднреА рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЗрд╡рд▓ рддрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЬрдм рдХреЛрдИ рд╕реВрдЪрдХ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИред рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдмреЛрдирд╕ рдХреЗ рд░реВрдк рдореЗрдВ, dereferencing рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЖрд╡рдВрдЯрд┐рдд рдореЗрдореЛрд░реА рдЬрд╛рд░реА рдХрд░реЗрдЧрд╛ред
fn main() { let my_pointer = manual_heap_reference(1337); let my_boxed_struct = unsafe { Box::from_raw(my_pointer) };
рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж, рдпрд╣ рдХреЛрдб рдХреЗрд╡рд▓ рдПрдХ рдмреЙрдХреНрд╕ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред рдмреЙрдХреНрд╕ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕реВрдЪрдХ-рдЖрдзрд╛рд░рд┐рдд рдЕрдореВрд░реНрдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рд░ рдЬрдЧрд╣ рдмрд┐рдВрджреБрдУрдВ рдХреЗ рд╡рд┐рддрд░рдг рдХреЛ рд░реЛрдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореБрдЦреНрдп рдХрд╛ рдЕрдЧрд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг рдПрдХ рджреЛрд╣рд░реА рдореБрдХреНрдд рдореЗрдореЛрд░реА (рдбрдмрд▓-рдлреНрд░реА) рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░реЗрдЧрд╛ ред
fn main() { let my_pointer = manual_heap_reference(1337); let my_boxed_struct_1 = unsafe { Box::from_raw(my_pointer) };
рддреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рдЕрдореВрд░реНрддрддрд╛ рдХреНрдпрд╛ рд╣реИ?
рд╕реБрд░рдХреНрд╖рд┐рдд рдЕрдореВрд░реНрддрддрд╛ рдПрдХ рдЕрдореВрд░реНрддрддрд╛ рд╣реИ рдЬреЛ рдПрдкреАрдЖрдИ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдкрд░реЛрдХреНрдд рд╕реБрд░рдХреНрд╖рд╛ рдЧрд╛рд░рдВрдЯреА рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдмреЙрдХреНрд╕ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ * рдореНрдпреВрдЯ рдЯреА, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбрдмрд▓ рдореЗрдореЛрд░реА рдбреАрд▓рд▓реЛрдХреЗрд╢рди рдХреЛ рдЬрдиреНрдо рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рд╕рдЪрд┐рддреНрд░ рд╣реИред
рдПрдХ рдЕрдиреНрдп рдЙрджрд╛рд╣рд░рдг Rust рдореЗрдВ Rc рдкреНрд░рдХрд╛рд░ рд╣реИред рдпрд╣ рдПрдХ рд╕рдВрджрд░реНрдн рдЧрд┐рдирддреА рд╕реВрдЪрдХ рд╣реИ - рдвреЗрд░ рдкрд░ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреИрд░-рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рд╕рдВрджрд░реНрднред рдЪреВрдВрдХрд┐ рдпрд╣ рдореЗрдореЛрд░реА рдХреЗ рдПрдХ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рд╕рд╛рде рдХрдИ рдПрдХреНрд╕реЗрд╕ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдорд╛рдирд╛ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд░реЛрдХрдирд╛ рдЪрд╛рд╣рд┐рдП ред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдпрд╣ рдереНрд░реЗрдб рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЛ рдереНрд░реЗрдб рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЖрд░реНрдХ рдкреНрд░рдХрд╛рд░ (рдПрдЯреЙрдорд┐рдХ рд░реЗрдлрд░реЗрдВрд╕ рдХрд╛рдЙрдВрдЯрд┐рдВрдЧ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ рд▓рд┐рдВрдХ рдХрд╛рдЙрдВрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкрд░рдорд╛рдгреБ рдореВрд▓реНрдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдФрд░ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рдбреЗрдЯрд╛ рд░реЗрд╕ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рдХрд╛рд░рдг рдПрдХ рдкреНрд░рджрд░реНрд╢рди рдЬреБрд░реНрдорд╛рдирд╛ рд╣реИред
рд╕рдВрдХрд▓рдХ рдЖрдкрдХреЛ рдЖрд░рд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рдЖрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЖрд░рд╕реА рдЬреИрд╕реЗ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдиреЗ рдЗрд╕реЗ рдереНрд░реЗрдб рд╕реБрд░рдХреНрд╖рд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рдЕрдЧрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдРрд╕рд╛ рдХрд┐рдпрд╛, рддреЛ рдпрд╣ рдЕрдиреБрдЪрд┐рдд рд╣реЛрдЧрд╛: рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдЭреВрдард╛ рд╡рд╛рджрд╛ред
рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдЬрдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрдм рд╣реЛрддреА рд╣реИ?
рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд░рд╕реНрдЯ рд╣рдореЗрд╢рд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдПрдХ рдСрдкрд░реЗрд╢рди рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдЙрди рджреЛ рдирд┐рдпрдореЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рджреЛрд╣рд░реА рд▓рд┐рдВрдХ рдХреА рдЧрдИ рд╕реВрдЪреА рдореЗрдВ, рдПрдХ рд╣реА рдбреЗрдЯрд╛ (рдЕрдЧрд▓реЗ рддрддреНрд╡ рдФрд░ рдкрд┐рдЫрд▓реЗ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП) рдХреЗ рд▓рд┐рдП рдкрд░рд╕реНрдкрд░ рд▓рд┐рдВрдХ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд╛рдн рд╕реЗ рд╡рдВрдЪрд┐рдд рдХрд░рддреА рд╣реИред рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЗ рд╕рд╛рде, рдПрдХ рдбрдмрд▓ рд▓рд┐рдВрдХ рдХреА рдЧрдИ рд╕реВрдЪреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХрд░реНрддрд╛ * рдореНрдпреВрдЯ рдиреЛрдб рдкреЙрдЗрдВрдЯрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдЕрдореВрд░реНрддрддрд╛ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдПрдореНрдмреЗрдбреЗрдб рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдЕрдХреНрд╕рд░ рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдореВрд▓реНрдп рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рднреМрддрд┐рдХ рд╕реНрдерд┐рддрд┐ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЬрдм рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреЗ рд░рдЬрд┐рд╕реНрдЯрд░ рд╕реЗ & u u рдореНрдпреВрдЯ рд▓реЗрддреЗ рд╣реИрдВ рддреЛ рджреБрдирд┐рдпрд╛ рд░реБрдХ рдирд╣реАрдВ рд╕рдХрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдбрд┐рд╡рд╛рдЗрд╕ рд╕рдкреЛрд░реНрдЯ рдХреНрд░реЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЖрдорддреМрд░ рдкрд░, рдпреЗ рдмрдХреНрд╕реЗ рдкрд╛рд░рджрд░реНрд╢реА, рд╕реБрд░рдХреНрд╖рд┐рдд рд░реИрдкрд░реЛрдВ рдореЗрдВ рд░рд╛рдЬреНрдп рдХреЛ рдШреЗрд░ рд▓реЗрддреЗ рд╣реИрдВ рдЬреЛ рдЬрдм рднреА рд╕рдВрднрд╡ рд╣реЛ рдбреЗрдЯрд╛ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рддреЗ рд╣реИрдВ, рдпрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЧрд╛рд░рдВрдЯреА рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЕрдиреНрдп рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдХрднреА-рдХрднреА рдПрдХ рдСрдкрд░реЗрд╢рди рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рд╕рд╛рде рдкрдврд╝рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рдпрд╛ рд╕реНрдореГрддрд┐ рддрдХ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдкрд╣реБрдВрдЪ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рдЬрдм рддрдХ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЛ рдЫреВрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдЖрдХреНрд░рдордгрдХрд╛рд░рд┐рдпреЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрд╛рдиреА, рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдЕрд╕реБрд░рдХреНрд╖рд┐рдд), рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред
рдпрд╣ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХрд┐рд╕рдХреЗ рдХрдВрдзреЗ рдкрд░ рд╣реИ?
рд╣рдо рдкрд╣рд▓реЗ рджрд┐рдП рдЧрдП рдПрдХ рдмрдпрд╛рди рдкрд░ рдЖрддреЗ рд╣реИрдВ - рд╣рд╛рдБ , рд░рд╕реНрдЯ рдХреЛрдб рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛрдб рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдпрд╣ рдкрд╛рдпрдерди рдореЗрдВ рдмреБрдирд┐рдпрд╛рджреА рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡реАрдИрд╕реА, рд╣реИрд╢рдордк рдЖрджрд┐ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдХреБрдЫ рд╣рдж рддрдХ рд╕реВрдЪрдХ рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ред
рд╣рдо рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЬрдВрдЧ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ, рдЗрд╕ рдЖрдзрд╛рд░рднреВрдд рдзрд╛рд░рдгрд╛ рдХреЗ рд╕рд╛рде рдХрд┐ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛрдб рдЬреЛ рд╣рдо рдЕрдкрдиреА рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдпрд╛ рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдХреЛрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд▓рд┐рдЦрд╛ рдФрд░ рд╕рдордЭрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд░рд╕реНрдЯ рдХрд╛ рдореМрд▓рд┐рдХ рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛрдб рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЙрдирдХреЗ рд▓реЗрдЦрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдЬрд╛рдВрдЪрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдкрд╛рдпрдерди рдореЗрдВ, рдореЗрдореЛрд░реА рдореИрдирд┐рдкреБрд▓реЗрд╢рди рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рднрд╛рд░ рдХреЗрд╡рд▓ рд╡реНрдпрд╛рдЦреНрдпрд╛рдХрд╛рд░реЛрдВ рдФрд░ рдмрд╛рд╣рд░реА рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдкрд╛рд╕ рд╣реИред рд╕реА рдореЗрдВ, рдпрд╣ рдмреЛрдЭ рд╣рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд╕рд╛рде рд░рд╣рддрд╛ рд╣реИред
рдЬрдВрдЧ рдореЗрдВ, рдпрд╣ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреАрд╡рд░реНрдб рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдирд┐рд╣рд┐рдд рд╣реИред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреЛрдб рдХреЗ рдЕрдВрджрд░ рдЕрджреГрд╢реНрдп рд░реВрдк рд╕реЗ рдмрдирд╛рдП рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЗрд╕рд▓рд┐рдП рдкреБрд╕реНрддрдХрд╛рд▓рдп рдпрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдмрд╕реЗ рдЫреЛрдЯреА рд░рд╛рд╢рд┐ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЕрд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛, рдЙрдЬрд╛рдЧрд░ рдФрд░ рд╕рдВрдХреЗрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреЗ Rust рдХреЛрдб рдореЗрдВ segfaults рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ рдпрд╛ рдЖрдкрдХреЗ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛрдб рдХреА рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИред
рдпрд╣ рдПрдХ рдЖрджрд░реНрд╢ рдкреНрд░рдгрд╛рд▓реА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдкрдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЧрддрд┐, рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИред