История изменений
Исправление mersinvald, (текущая версия) :
проблема с unsafe в том, что он вообще говоря позволяет двум разным библиотекам иметь общие instance-переменные, что не позволяет даже ооп
Минуууточку, растовская система типов тоже как бы этого не позволяет, но в ансейфе есть возможность обходить (почти) любые ограничения.
Так и ООП в C++ ничего не позволяет, но почему-то можно сделать так:
class A {
int private_val;
}
class B {
void break_A(A* a) {
*(int*)(a) = 0;
}
}
Исходная версия mersinvald, :
проблема с unsafe в том, что он вообще говоря позволяет двум разным библиотекам иметь общие instance-переменные, что не позволяет даже ооп
Минуууточку, растовская система типов тоже как бы этого не позволяет, но в ансейфе есть возможность обходить любые ограничения.
Так и ООП в C++ ничего не позволяет, но почему-то можно сделать так:
class A {
int private_val;
}
class B {
void break_A(A* a) {
*(int*)(a) = 0;
}
}