ios - 一个NSString的指针怎么判断是不是为null?
PHPz
PHPz 2017-04-18 09:45:40
0
1
585

#define _UIKeyboardFrameEndUserInfoKey (&UIKeyboardFrameEndUserInfoKey != NULL ? UIKeyboardFrameEndUserInfoKey : @"UIKeyboardBoundsUserInfoKey")这段代码我知道是什么意思,但是不明白为什么判断是不是NULL的时候要对变量先取址?我自己写代码测试时会有警告,说拿地址跟非NULL比较永远都是true

PHPz
PHPz

学习是最好的投资!

모든 응답(1)
大家讲道理

자, 잠을 자고 일어났더니 이미 Baozhen에서 같은 질문을 하신 분이 답변을 해주셔서 여기에 올릴게요... Baozhen에서 물어본 게 왜 그 사람이 Baozhen을 사용해야 하는지였습니다. NULL과 비교하고 누군가 이를 수정하려면 왜 NULL과 비교하기 위해 상수 주소를 사용해야 합니까? 왜냐하면 그 UIKey는.....실제로 상수이기 때문입니다.
여기 내 문제를 해결했다고 생각하는 대답이 있습니다. "상수(또는 함수)의 주소를 null과 비교하는 것은 일반적으로 상수가 정의되었는지 확인하는 데 사용됩니다.

빌드하는 SDK(최소 대상 버전)에 상수가 정의되어 있으므로 경고가 표시되므로 실행 시 항상 true로 평가됩니다(주소는 null이 아님). 상수가 정의되지 않은 iOS 버전은 true가 아닙니다(주소는 null이 됩니다).

대상 버전을 상수가 정의된 버전보다 낮은 버전으로 낮추면 해당 SDK에 대한 링크가 약해져서 더 이상 경고를 받지 않게 됩니다.”

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿