Я пытаюсь выяснить способ использования typeof, чтобы создать слабую ссылку на self для использования в блоках, чтобы избежать циклов сохранения.
Когда я впервые прочитал об этом, кажется, что соглашение должно было использовать __block typeof(self) bself = self;, который компилируется, но используя __block, чтобы избежать циклов сохранения, больше не работает, и вместо этого следует использовать __weak.
Однако __weak typeof(self) bself = self; приводит к ошибке:
Тип 'typeof (self)' (aka 'TUAccountsViewController * const __strong') уже имеет атрибуты retainment, установленные на нем
Есть ли способ использовать typeof или другой вызов, чтобы создать слабую ссылку на self?