簡體   English   中英

如何從方法返回動態指針數組

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM