Помощь в развитии
Помогите новичкам освоить языки программирования!
Не будьте жадными на коротенькие статейки! ;)
Не будьте жадными на коротенькие статейки! ;)
Программирование

Данный проект ориентирован на публикацию статей по технологиям и алгоритмам, присущим программированию в целом, и…
Данный проект ориентирован на публикацию статей по технологиям и алгоритмам, присущим программированию в целом, и относящимся не только к геймдеву.
Уровень:
5
Руководитель:
Тематика:
Hardware & Software
Создан на сайте:
20.07.2013
ID:
988
Интересные проекты
Комментарии проекта Программирование
Выбор редакции
Работа с небезопасным кодом в C#
Но с недавних пор это все не актуально стало. В новом стандарте есть новые структуры данных, которые оборачивают такие небезопасные операции и непосредственное использование unsafe становится ненужным
И ещё, извиняюсь за свою неграмотность в области ЯП.
Есть понятие управляемого и неуправляемого кода. Так вот шарп по-умолчанию использует управляемый код, это когда все данные жестко контролируются средой, ты не управляешь памятью напрямую и не можешь критически накосячить, а ненужные данные удаляются автоматически (то есть утечки памяти практически невозможны).
Но существует и возможность работать с неуправляемым кодом, использовать прямой доуступ к памяти, о чем собственно статья. Это считается небезопасным (отсюда и ключевое слово unsafe), потому что работоспособность, стабильность и защищенность программы начинает на 100% зависеть от уровня криворукости программиста.
Но несмотря на внешнюю схожесть, внутри C# работает абсолютно по-другому. Даже в небезопасном контексте с прямым доступом к памяти, код все равно выполняется на виртуальной машине.
Не знаю, я пользуюсь mem alloc'ом в некоторых своих подопытных детишках по C++ только...
У меня свои шаманства с бубном, короче.
Выбор редакции
Атрибуты в C#