Convert CFIndex to NSUInteger?

2019-07-24 09:20发布

How do I convert typedef signed long CFIndex to typedef unsigned int NSUInteger?

Is it OK if I use a CFIndex as an argument of type NSUInteger. I haven't casted it, and the complier doesn't seem to mind. Does the compiler just do the conversion for me?

2条回答
够拽才男人
2楼-- · 2019-07-24 09:34

You need to be very careful here, since CFIndex is signed and NSUInteger is unsigned. There are various routines that return a CFIndex -1. You need to check for that before using it as an NSUInteger.

查看更多
Explosion°爆炸
3楼-- · 2019-07-24 09:55

Yes, the compiler performs implicit type conversion.

查看更多
登录 后发表回答