如何从 Class 库中 return 一个结构数组到控制台应用程序

How to return an array of structs to Console Application from Class Library

我有一个结构:-

Test.h

typedef struct employees
{
    char* name[5];
    int empi_id;
};

Test.cpp 我创建了一个函数,我需要在这些结构中存储值。

int Disp()
{
    employees e[5];
    e[0].empi_id=10;
    e[1].empi_id=100;
    e[2].empi_id=500;
    e[3].empi_id=1000;
    e[4].empi_id=5000;
    return 0;
}

TestDll.cpp 控制台应用程序:

void main()
{
    LoadLibrary(("TestDll.dll"));

    int obj = Disp();
}

我需要return这些结构数组到我的控制台Application.I想在我的控制台应用程序中显示分配的值directly.How我应该return吗?可以我将这些结构数组作为函数参数发送,那么我应该怎么做 it.Since 我需要发送 5 个数组。 查看下面的 link 确实让我想到了将值分配给结构,但我无法在我的控制台应用程序中显示这些值。 return an array of structs or an array of struct pointers?

将函数签名更改为

int Disp(employees *) ;

没问题。不正常的是你如何 link 你的 DLL。您可以在启动时加载它(它发生在幕后)或使用 LoadLibray,但这也需要 GetProcAddress。第一种方法更容易。它允许您像加载库一样加载 DLL。