1
A
回答
0
使用PIMPL成語:
在頭(DLL安全面):
class Type;
class MyClass
{
public:
int GetNumberOfType();
Type * GetValue(int i) { return this->values[i]; };
protected:
Type ** values;
};
在來源:
#include <Type.h> // common header to real definition and declaration
2
雖然你的問題不是很清楚不過,這裏有幾個提示:
類/結構是用來分組的東西。儘管可以創建一個用於對所有返回值進行分組的結構,但它實際上取決於這些返回值的相關程度。這更符合慣例和麪向對象的原則。
要返回多個值,可以使用指針和引用。例如,以下函數原型以常規方式返回bool,但接受兩個指針作爲參數。這些指針指向的對象可以在被調用函數中更改,因此可以返回多個值。
函數原型:
bool returnValues(int i, char* c, int* result);
相關問題
- 1. 我如何從一個方法在C#中返回多個值
- 2. 如何在C/Cilk中以線程安全的方式打印?
- 3. '返回'可以返回C中的多個值嗎?
- 4. 在C#中的方法中返回FileStream是否安全?
- 5. 在C中返回va_list安全嗎?
- 6. 以安全方式乘以分數c#
- 7. 在C#中返回多個值
- 8. 如何在swift中返回多個值
- 9. 如何在Python中返回多個值?
- 10. 如何在scope.watch中返回多個值?
- 11. 如何在java中返回多個值?
- 12. 如何在matlab中返回多個值?
- 13. 以線程安全的方式返回指針
- 14. 如何以安全的方式
- 15. 以編程方式在spring中以spring安全登錄用戶並返回sessionId
- 16. 在PHP中,如何以JSON格式返回MySQL中的多個列值?
- 17. 如何在多個線程中收集方法的返回值
- 18. 如何返回多個值?
- 19. 如何返回多個值?
- 20. 如何以這種特定的方式使用多個返回值函數?
- 21. 如何從c中的某個函數返回多個值
- 22. 如何從LabVIEW 2012中的C#.DLL獲取返回值?
- 23. 如何以線程安全的方式訪問c#WPF控件?
- 24. 以安全模式調用dll
- 25. 如何在C#中實現回調從具有多個參數的本機DLL方法檢索返回碼
- 26. 如何以安全的方式使用多態關聯
- 27. 以下哪種方法可以安全地在C++ dll中導出?
- 28. 在DLL方法中返回一個C字符串
- 29. 最快的C++方式返回值
- 30. 如何在C++的多線程中調用非線程安全的DLL?
認爲你需要用DLL側面來解釋你的深層問題 - 特別是需要由DLL分配的內存由DLL被釋放 - 是正確的? – Elemental 2011-04-05 10:12:51
@Elemental這似乎是一個常見的神話,但在一個DLL中刪除並在另一個DLL中刪除不會導致問題,如果鏈接正確完成。 – 2011-04-05 12:00:05
實際上,如果構建了DLL,則會發生這種情況:在不同的編譯器上,具有自定義的新建構建於具有不同設置的相同編譯器上。我已經與這很多作鬥爭。 – Elemental 2011-04-06 11:19:55