[EDIT 1 - 增加第三点 (增 编 Alex)]
你们喜欢哪一种方法?
Car& DAL::loadCar(int id) {}
bool DAL::loadCar(int id, Car& car) {}
Car* DAL::loadCar(int id) {}
如果找不到这辆汽车,第一种方法就会使车返回无效,第二种方法是假的。
第二种方法将在数据库中查询的数据的蒸发和填满时形成一个 Car物体。 推定(M C++是非常隐蔽的),即按以下方式编码:
Car& DAL::loadCar(int id)
{
Car *carPtr = new Car();
Car &car= *carPtr;
car.setModel(/* value from database */);
car.setEngineSize(/* value from database */);
// etc
return car;
}
增 编