Помогите мне разобраться с типами указателей в расте. Есть указател типа &int. По этому указателю находится число и у такого указателя есть только один владелец. Т.е. я не могу сделать две структуры
struct store{a : &int}
Есть указатель Box<int> я могу создать такой указатель внутри блока и делать с ним все, что угодно, но в конце блока все копии этого указателя должны быть удалены и сам указатель освободится. GC эти указатели тоже не трогает, так как время освобождения известно.
Есть указатель ~int. Это обычный указатель на объект в куче. Время жизни неизвестно, за ним следит GC.
Я правильно понял, как работать с этими указателями? Есть тут еще какие-то типы или только эти 3? Что за указатель *mut int?