Только из кода, который вы разместили, это должно работать.Единственное, что удаляет _child - это родительский класс.
Таким образом, есть две возможности: во-первых, что-то еще также имеет ссылку на указатель _child и сохраняет счетчик ссылок живым, а затем родительский объект уничтожается.Затем, в конечном счете, все, что удерживает дочерний элемент, также уничтожается, тогда убивается дочерний элемент.
Сценарий 2 заключается в том, что вызов getSystem зависит от некоторых других членов, которых вы нам не показываете, и которые удаляются до _childshared_ptr is.