[英]How to return a dynamic arrays of pointers from a method
請看下面的代碼
VehicleManager.h
#pragma once
#include "Vehicle.h"
class VehicleManager
{
public:
VehicleManager(int size);
~VehicleManager(void);
bool add(Vehicle *v);
void display();
int getCount();
Vehicle **getList();
private:
int count;
int maxVehicles;
Vehicle** vehicles;
};
VehicleManager.cpp
//Other Code
Vehicle VehicleManager::**getList()
{
return vehicles;
}
//Other Code
在這里,我無法返回數組。 如何從函數返回動態指針數組? 請幫忙!
將**
應用於返回類型:
Vehicle** VehicleManager::getList()
{
return vehicles;
}
但是你應該做的是使用std::vector<Vehicle*>
如果VehicleManager
負責動態分配Vehicles
的生命周期,或者std::vector<std::unique_ptr<Vehicle>
如果調用者是取得所有權。 在這兩種情況下,您都可以按值返回。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.