我有以下代码:
[application.tripHandler createTrip:picker.date
pickUpAddress:[ModelUtil addresFragmentFromGeoAddress:pickUpAddress]
orPickUpLocation:pickUpFavorite
andDropOffAddress:[ModelUtil addresFragmentFromGeoAddress:dropOffAddress]
orDropOffLocation:dropOffFavorite forDriver:application.currentDriver.driverId
completion:^(NSObject *entity)
{
if(application.dispatchVehicle)
{
Trip *createdTrip = (Trip *)entity;
当实体为空时会发生什么?
答案 0 :(得分:3)
如果entity
为nil
,则createdTrip
也将为nil
。
(nil
和NULL
在技术上是相同的,但nil
在语义上是空对象值,而NULL
是空指针。
在运行时,转换指针实际上并没有做任何事情。它仅修改指向的类型,然后影响对结果值的后续操作。但实际指针值将通过演员表保持不变。
答案 1 :(得分:0)
createdTrip
将是nil
对象。
答案 2 :(得分:0)
在obj-c中,演员在运行时没有做任何事情,所以你只需指定nil。