查看自由DLL接口规范的源代码
←
自由DLL接口规范
跳转到:
导航
,
搜索
根据下列原因,你没有权限编辑本页:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
=DLL的返回值= 新格式DLL可返回单值,序列和数组。单值类型大致分为两种:数值类型和字符串类型,可以通过函数返回值直接返回。 *返回单值类型的c语言例子 // 公式声明与调用例子 extern 'FoxFunc.dll' int test6(); extern 'FoxFunc.dll' float test7(); extern 'FoxFunc.dll' LPCWSTR test8(); k1: test6(),OwnerScale; k2: test7(),OwnerScale; comment(test8); // c++ .h 声明 __declspec(dllexport) int __stdcall test6(); __declspec(dllexport) float __stdcall test7(); __declspec(dllexport) wchar_t* __stdcall test8(); // c++ .cpp 实现 extern "C" __declspec(dllexport) int __stdcall test6() { return 1; } extern "C" __declspec(dllexport) float __stdcall test7() { return 0.5f; } extern "C" __declspec(dllexport) wchar_t* __stdcall test8() { return L"test string 1"; } *返回序列或数组 若要返回序列或数组,则把需要返回的序列赋值目标当作参数传递给DLL,在DLL内部直接修改已达到赋值。 注意逐根运行模式下,每一根K线都会调用dll,所以通常每次调用只需要赋值比上一根K线新增加的类型, 例如计算收盘价均值时,每次在BarPos位置填入当根K线的均值即可。由此可见,这种应用下通常需要把 BarPos(当前是第几根K线)作为参数传入Dll中。返回序列和数组可以参考上面传入序列的公式例子。 下面一个例子是在图形上输出当前是第几根K线的例子: // 公式中的声明与调用 extern 'FoxFunc.dll' void test9(NumericSeries, int); MyIndi:0; test9(MyIndi, BarPos); // c++ .h 声明文件 __declspec(dllexport) void __stdcall test9(float *pf, int n); // c+= .cpp 实现 extern "C" __declspec(dllexport) void __stdcall test9(float *pf, int n) { // 每根都会调用一次,所以每次只需赋值当前根 pf[n - 1] = n; }
返回到
自由DLL接口规范
。
个人工具
内存:18909KB
18.223.108.59
该IP地址的讨论
登录
名字空间
页面
讨论
变换
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
社区专页
新闻动态
最近更改
随机页面
金魔方论坛
下载金魔方
帮助
工具箱
链入页面
链出更改
特殊页面