__weak
メソッドの実装の署名でストレージ修飾子を使用することは有効ですか? 特に、それがメソッドの公開署名の一部でない場合は? 例えば:
- (UIView *)tableView:(__weak UITableView *)tableView viewForHeaderInSection:(NSInteger)sectionIndex
{
UIView *view = [ABHeaderView view];
view.actionBlock = ^{
[tableView doSomething];
}
// ...
return view;
}
これは正しくtableView
ウィーク ポインターとして使用されますか? それとも、本当にブロック内で何かを__weak *weakTableView = tableView;
して使用する必要がありますか?weakTableView
警告やエラーは表示されず、clang Static Analyzer は警告をスローしません。