这段代码是什么意思??[

a121984376 2009-08-12 09:14:40
我是写c#的,最近要调用delphi 写的dll,但是我不明白下面的函数是什么意思???
function ReadAllSmsByStatus(aStatus: integer; var aMsg: array of TMsg): integer; stdcall


另外 这个方法应该是传数组进去吧?那么谁知道对应的C#应该传什么对象进去啊?
function ReadAllSmsByStatus(aStatus: integer; var aMsg: array of TMsg): integer; stdcall
...全文
135 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxsan 2009-08-12
  • 打赏
  • 举报
回复
顶!
a121984376 2009-08-12
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 starluck 的回复:]
引用 9 楼 a121984376 的回复:
引用 8 楼 sanguomi 的回复:
引用 6 楼 a121984376 的回复:
引用 5 楼 seamour 的回复:
用这种参数做dll接口的一看就是个菜鸟,根本就不知道 array of T 的参数究竟传什么东西
实际上会传两个参数,用c写的话:
int __stdcall ReadAllSmsByStatus(int aStatus, TMsg* aMsg_1st, int aMsg_LastIndex)

数组的第一个参数是首元素的指针,第二个参数是最后一个元素的索引(数组长度-1)
不用unsafe的话,我还真不太清楚该怎么写


这是C的,那有没有c#的啊,C#里面没有指针的概念啊


乱讲,C#怎么没有指针


那你说吧~ 哪个概念是指针??

在 unsafe  下是允許的。
[/Quote]
那这里是不是传 ref Tmsn[] 这个结构的数组进去吗??
starluck 2009-08-12
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 a121984376 的回复:]
引用 8 楼 sanguomi 的回复:
引用 6 楼 a121984376 的回复:
引用 5 楼 seamour 的回复:
用这种参数做dll接口的一看就是个菜鸟,根本就不知道 array of T 的参数究竟传什么东西
实际上会传两个参数,用c写的话:
int __stdcall ReadAllSmsByStatus(int aStatus, TMsg* aMsg_1st, int aMsg_LastIndex)

数组的第一个参数是首元素的指针,第二个参数是最后一个元素的索引(数组长度-1)
不用unsafe的话,我还真不太清楚该怎么写


这是C的,那有没有c#的啊,C#里面没有指针的概念啊


乱讲,C#怎么没有指针


那你说吧~ 哪个概念是指针??
[/Quote]
在 unsafe 下是允許的。
a121984376 2009-08-12
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 sanguomi 的回复:]
引用 6 楼 a121984376 的回复:
引用 5 楼 seamour 的回复:
用这种参数做dll接口的一看就是个菜鸟,根本就不知道 array of T 的参数究竟传什么东西
实际上会传两个参数,用c写的话:
int __stdcall ReadAllSmsByStatus(int aStatus, TMsg* aMsg_1st, int aMsg_LastIndex)

数组的第一个参数是首元素的指针,第二个参数是最后一个元素的索引(数组长度-1)
不用unsafe的话,我还真不太清楚该怎么写


这是C的,那有没有c#的啊,C#里面没有指针的概念啊


乱讲,C#怎么没有指针
[/Quote]

那你说吧~ 哪个概念是指针??
sanguomi 2009-08-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 a121984376 的回复:]
引用 5 楼 seamour 的回复:
用这种参数做dll接口的一看就是个菜鸟,根本就不知道 array of T 的参数究竟传什么东西
实际上会传两个参数,用c写的话:
int __stdcall ReadAllSmsByStatus(int aStatus, TMsg* aMsg_1st, int aMsg_LastIndex)

数组的第一个参数是首元素的指针,第二个参数是最后一个元素的索引(数组长度-1)
不用unsafe的话,我还真不太清楚该怎么写


这是C的,那有没有c#的啊,C#里面没有指针的概念啊
[/Quote]

乱讲,C#怎么没有指针
starluck 2009-08-12
  • 打赏
  • 举报
回复
C# Ref 聲明傳遞, TMSG 相應應該是一個 Struct
a121984376 2009-08-12
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 seamour 的回复:]
用这种参数做dll接口的一看就是个菜鸟,根本就不知道 array of T 的参数究竟传什么东西
实际上会传两个参数,用c写的话:
int __stdcall ReadAllSmsByStatus(int aStatus, TMsg* aMsg_1st, int aMsg_LastIndex)

数组的第一个参数是首元素的指针,第二个参数是最后一个元素的索引(数组长度-1)
不用unsafe的话,我还真不太清楚该怎么写
[/Quote]

这是C的,那有没有c#的啊,C#里面没有指针的概念啊
Seamour 2009-08-12
  • 打赏
  • 举报
回复
用这种参数做dll接口的一看就是个菜鸟,根本就不知道 array of T 的参数究竟传什么东西
实际上会传两个参数,用c写的话:
int __stdcall ReadAllSmsByStatus(int aStatus, TMsg* aMsg_1st, int aMsg_LastIndex)

数组的第一个参数是首元素的指针,第二个参数是最后一个元素的索引(数组长度-1)
不用unsafe的话,我还真不太清楚该怎么写
a121984376 2009-08-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bdmh 的回复:]
是数组,TMsg的数组
[/Quote]

那谁知道 我用C#调用的时候,该传什么对象进去啊?
bdmh 2009-08-12
  • 打赏
  • 举报
回复
是数组,TMsg的数组
a121984376 2009-08-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wintergoes 的回复:]
根据传入的aStatus参数获取,aMsg应该是一个输出参数,要获取的内容存在这个里面
TMsg应该是自己写的一个结构
[/Quote]

TMsg 是一个结构, var aMsg: array of TMsg 这里是需要一个Tmsg的数组吧??
wintergoes 2009-08-12
  • 打赏
  • 举报
回复
根据传入的aStatus参数获取,aMsg应该是一个输出参数,要获取的内容存在这个里面
TMsg应该是自己写的一个结构
随机开仓,止盈1~2个点,止损1~20个点能实现盈利正期望吗?《从编程小白到量化宗师之路》系列课程是一套综合性实战课程,涵盖股票,期货,虚拟货币等的交易方法和策略手段。《m单位止盈 n单位止损的方式,能不能实现盈利?》是本系列的第四个中级课程。本网站的课程宗旨是缩短个人或小型投资者与大型机构投资者之间的的差距。课程内容从交易者经常见到,经常思考的问题开始,通过分析成交后的盈亏分布,建立模型,刻画问题,并对问题以数学的方式进行了表达。从而得出结论。与市面上的其他理论课程不同,本课程注重实战,注重结果,全部模型代码均已经上传发表,学员上课后,可以使用自己的tick数据,进行分析。如果获取tick数据有疑问,可以参考课程:《期货CTP高频数据Tick下载》 https://edu.csdn.net/course/detail/24783本课程能够解答的问题有:1)请问1单位止盈,3单位止损的系统是否能实现正期望值? https://www.zhihu.com/question/423194389/answer/14989174122)抢帽子交易是什么意思?为什么有的人能够成功,说是取款机,而有的人说风险巨大,是老虎机。看过这个课程,您将会知道:a) 这类问题的究极解决方案,直达问题核心,不再纠结原因b)构建一段时间可用的交易策略c)知道“没有不变的策略”的原因  

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧