如何返回结构体指针数组?

问题描述 投票:0回答:1

我想返回一个结构体指针数组。

我希望结构体指针数组可以在主函数中访问。但它总是会破裂。我尝试过使用智能指针,但似乎它们不能很好地处理数组或其他东西。有人可以告诉我应该采取什么步骤来解决这个问题吗?

抱歉,如果变量是用印度尼西亚语编写的。

https://github.com/chaaaeeee/memoryleaks/blob/master/main.cpp

dataPasien struct the function that i want the return to be array of pointers to a struct

我尝试过智能指针,但似乎它们对数组的处理效果不佳。我尝试了很多事情,但总是以内存泄漏结束

c++ arrays pointers heap-memory smart-pointers
1个回答
0
投票

重写您的代码以能够执行此操作:

std::vector<dataPasien> input() 
{
    std::vector<dataPasien> arr;
    dataPasien new_data;

    int jumlah;
    std::cout << "berapa pasien? ";
    std::cin >> jumlah;

    for(int i = 0; i < jumlah; i++) 
    {
        std::cout << "nama? ";
        std::cin >> new_data.nama;

        std::cout << "umur? ";
        std::cin >> new_data.umur;

        std::cout << "penyakit? ";
        std::cin >> new_data.penyakit;

        arr.push_back(new_data);
    };

    return arr;
}
© www.soinside.com 2019 - 2024. All rights reserved.