如何将类实例作为参数传递?解决Capture构造函数参数缺失报错
解决Capture构造函数参数缺失的报错问题
嗨,这个问题很常见——你的Capture类只定义了带DisplayError参数的构造函数,没有无参构造函数,所以当你直接写new Capture()的时候,编译器找不到匹配的构造方法,自然就抛出这个参数缺失的报错啦。
解决方法很简单,只需要先创建DisplayError的实例,再把它作为参数传入Capture的构造函数即可。修改你的Application.Run代码如下:
// 先实例化DisplayError对象 var errorDisplayer = new DisplayError(); // 将实例传入Capture构造函数,满足参数要求 Application.Run(new Capture(errorDisplayer));
如果觉得代码有点繁琐,也可以合并成一行,直接在创建Capture的同时实例化DisplayError:
Application.Run(new Capture(new DisplayError()));
这样修改后,编译器就能找到对应的构造函数,报错就会消失啦。本质上就是满足Capture类构造函数的依赖需求,给它提供一个必需的DisplayError实例。
内容的提问来源于stack exchange,提问作者user6478676
相关产品推荐
相关产品推荐

