Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C+中以DLL安全的方式返回多个值+;? 我想在C++中的跨DLL安全方式中返回多个值。_C++_Dll_Return Value - Fatal编程技术网

如何在C+中以DLL安全的方式返回多个值+;? 我想在C++中的跨DLL安全方式中返回多个值。

如何在C+中以DLL安全的方式返回多个值+;? 我想在C++中的跨DLL安全方式中返回多个值。,c++,dll,return-value,C++,Dll,Return Value,我应该使用stuct/class吗?使用成语: 在标头(dll安全表面)中: 资料来源: #include <Type.h> // common header to real definition and declaration #包括//公共头到实际定义和声明 尽管您的问题不是很清楚,但这里有一些提示: 类/结构用于对事物进行分组。虽然可以创建一个用于对所有返回值进行分组的结构,但它实际上取决于这些返回值之间的密切关系。这更多的是遵守约定和OOP原则 要返回多个值,可以使用指针和

我应该使用stuct/class吗?

使用成语:

在标头(dll安全表面)中:

资料来源:

#include <Type.h> // common header to real definition and declaration
#包括//公共头到实际定义和声明

尽管您的问题不是很清楚,但这里有一些提示:

  • 类/结构用于对事物进行分组。虽然可以创建一个用于对所有返回值进行分组的结构,但它实际上取决于这些返回值之间的密切关系。这更多的是遵守约定和OOP原则

  • 要返回多个值,可以使用指针和引用。e、 下面的函数原型以常规方式返回bool,但接受两个指针作为参数。这些指针指向的对象可以在被调用函数中更改,因此可以返回多个值

  • 功能原型:

    bool returnValues(int i, char* c, int* result);
    

    我想你需要解释一下你在DLL方面的深层次问题——特别是DLL分配的内存需要DLL释放——对吗?@Elemental这似乎是一个常见的误解,但是,如果链接正确,则在一个dll中新建和在另一个dll中删除不会导致问题。实际上,如果dll是在不同的编译器上生成的,具有自定义新建,是在具有不同设置的同一编译器上生成的,则会导致问题。我已经为此奋斗了很多次。
    bool returnValues(int i, char* c, int* result);