많은 사람들이 때때로 코드에 NS_INLINE
함수를 사용한다는 것을 알고 있습니다. 나는 그들이 그것을 언제 사용해야하는지, 그리고 왜 그것을 사용 하는지를 어떻게 아는지 궁금하다.객관적인 C에서 NS_INLINE 함수를 사용할 때
나는 INLINE
함수는 objective-C
함수보다 적은 명령어가 있음을 읽었습니다.
NS_INLINE id NilToEmptyString(id obj)
{
return obj ? : @"";
}
NS_INLINE BOOL isRunningTests(void)
내가 어떤 특정 장소에서 그것을 사용하려면 : 나는 내가 본 몇 가지 예를
C.
에 대해 너무 많이 알고하지 않기 때문에 나는이있는이 지역에서 길을 잃었 조금입니다. 예를 들어. 갤러리의 모든assets
을 가져 와서
location
과
date
이 있는지 확인해야합니다. 나는
checkLocation
과
checkDate
의 기능을
inline
기능으로하고 싶습니다.
일부 사용자의 사진은 5000 장이며 iPhone 4의 경우 5 분이 지나면 시간이 너무 많이 걸립니다. 내가 refactor 코드 싶습니다 그리고 때로는 inline
함수는 나쁜 방법이 아닙니다 읽습니다.
사용하지 마십시오. 못. 컴파일러는 보통 인라인 할 때 스스로 결정할 수 있습니다. 실제로 성능 문제가 있고 프로파일 러 로그를 본 후에 만 인라이닝을 고려하십시오. 인라인이 무엇인지 모르는 경우에는 사용하지 마십시오. – Sulthan
Objective-C 작업의 대다수가 너무 느리므로 가끔 메서드를 인라인하면 성능에 아무런 영향을주지 않습니다. –