本文介绍了在VB.Net中传递函数指针的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 来自C / C ++背景,我如何将函数指针传递给 函数?我想编写一个处理某些线程产生的函数。 这就是我想要的东西: 函数(thesub as< ; functionptr?>) dim t as new system.threading.thread(_ new system.threading.threadstart(Addressof thesub)) .... 如何在VB.Net中获得类似内容? 解决方案 使用委托。代表相当于.NET中的函数指针。 问候, Ron " ChrisB" <章**** @ discussions.microsoft.com>在消息中写道 news:87 ********************************** @ microsof t.com ... 来自C / C ++背景,我如何将函数指针传递给函数?我想写一个处理某些线程产生的函数。这就是我想要的东西: 函数(thesub as< functionptr?>) new system.threading.threadstart(Addressof thesub)) 我怎么能得到这样的东西进入VB.Net? " Ron Bremmers" < R ******** @ home.nl>。 schrieb:使用委托。委托相当于.NET中的函数指针。 文档: Visual Basic语言概念 - 事件和代表 < URL:http://msdn.microsoft.com/library/en-us/vbcn7/html/vaconEventsDelegatesInheritance.asp> - MS Herfried K. Wagner MVP< URL:http://dotnet.mvps.org/> VB< URL :http://dotnet.mvps.org/dotnet/faqs/> 我尝试使用代表,但我不知道如何。我试过这样的事情: 委托函数fpMyfunc() (我也尝试过委托子fpMyfunc()) 然后: 函数(thesub as fpMyfunc) dim t as new system.threading.thread(_ new system.threading .threadstart(thesof thesub)) 但这不起作用。 VB.Net抱怨thesub在 地址之后..说我不需要()在子名后面,好像它确实 不能识别thesub作为一个子程序。 " Ron Bremmers"写道: 使用委托。代表相当于.NET中的函数指针。 问候, Ron " ChrisB" <章**** @ discussions.microsoft.com>在消息中写道新闻:87 ********************************** @ microsof t.com。 .. 来自C / C ++背景,我如何将函数指针传递给函数?我想写一个处理某些线程产生的函数。这就是我想要的东西: 函数(thesub as< functionptr?>) new system.threading.threadstart(Addressof thesub)) 我怎么能得到这样的东西进入VB.Net? Coming from a C/C++ background, how would I pass a function pointer to afunction? I want to write a function that handles certain thread spawning.Here''s what I''m trying to invision:function( thesub as <functionptr?> )dim t as new system.threading.thread( _new system.threading.threadstart( Addressof thesub ))....How can I get something like that going in VB.Net? 解决方案 Use delegates. Delegates are the equivalent of function pointers in .NET.Regards,Ron"ChrisB" <Ch****@discussions.microsoft.com> wrote in messagenews:87**********************************@microsof t.com... Coming from a C/C++ background, how would I pass a function pointer to a function? I want to write a function that handles certain thread spawning. Here''s what I''m trying to invision: function( thesub as <functionptr?> ) dim t as new system.threading.thread( _ new system.threading.threadstart( Addressof thesub )) ... How can I get something like that going in VB.Net?"Ron Bremmers" <r.********@home.nl> schrieb: Use delegates. Delegates are the equivalent of function pointers in .NET.Documentation:Visual Basic Language Concepts -- Events and Delegates<URL:http://msdn.microsoft.com/library/en-us/vbcn7/html/vaconEventsDelegatesInheritance.asp>--M S Herfried K. WagnerM V P <URL:http://dotnet.mvps.org/>V B <URL:http://dotnet.mvps.org/dotnet/faqs/> I tried using delegates but I don''t know how. I tried something like this:delegate function fpMyfunc()(I also tried delegate sub fpMyfunc())Then:function( thesub as fpMyfunc )dim t as new system.threading.thread( _new system.threading.threadstart( Addressof thesub ))But this did not work. VB.Net complained about the "thesub" after theAddressof.. saying that I do not need ()''s after the sub name, as if it didnot recognize "thesub" as being a subroutine."Ron Bremmers" wrote: Use delegates. Delegates are the equivalent of function pointers in .NET. Regards, Ron "ChrisB" <Ch****@discussions.microsoft.com> wrote in message news:87**********************************@microsof t.com... Coming from a C/C++ background, how would I pass a function pointer to a function? I want to write a function that handles certain thread spawning. Here''s what I''m trying to invision: function( thesub as <functionptr?> ) dim t as new system.threading.thread( _ new system.threading.threadstart( Addressof thesub )) ... How can I get something like that going in VB.Net? 这篇关于在VB.Net中传递函数指针的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云! 08-01 04:34