Нет, указатели Ada (на практике) в значительной степени неуправляемы, как простые указатели C / C ++.Как говорит ответ Джейкоба, это вариант реализации компилятора, которого я не видел на практике.
Разница, которую я знаю, заключается в том, что для локально типа указателя вы получаете память извсе объекты типа возвращаются, когда тип , а не указатель, выходит из области видимости.Но эти указатели редко бывают полезными (они могут быть для очень локализованных алгоритмов, но не для долгоживущих структур).
Для указателей a-la std :: shared_ptr вам нужно будет развернуть собственную реализацию или выполнить поиск длякакая-то библиотека Ada (вероятно, GNATCOLL.Refcount - совпадение).