c# - 类型“B”没有带有类型参数的构造函数?
问题描述
我有一堂课A
。在创建类 A 时,我必须运行类B
(并将实例A
作为参数传递)但是在运行时,我得到一个错误,我无法初始化对象?是什么原因以及如何解决?
具体例子:
public class A: UserControl
{
private A ()
{
InitializeComponent ();
}
private void InitializeComponent ()
{
B _B1 = new B (this); // error: Type 'B' does not have a constructor with parameters of types
}
}
public class B
{
private class A _classA;
public B (class A a1)
{
_classA = a1;
}
}
解决方案
像这样定义你的 B 类。你没有用class
.
public class B
{
private A _classA;
public B(A a1)
{
_classA = a1;
}
}
即使这样,一旦你像这样初始化你的 Class B,你将需要另一个方法或属性来检索_classA
. (public A ClassA => _classA;
也许。)
推荐阅读
- python - 如何检查一个数据框的二级索引是否在另一个数据框的四级索引中
- javascript - 在存储在数据库中的图像和实时网络摄像头图像之间使用 TensorFlow.js 进行人脸匹配
- python - 使用 for 循环遍历变量
- python - Selenium Firefox 驱动程序中的 Socks5 代理配置
- java - Android Drag&Drop:拖动拖拽视图时的视图大小
- python - 制作一个以列表为输入并在 keras 中输出数字的模型
- java - 将句点/持续时间字符串文字解析为 Java 中的 Period/Duration 实例
- git - 提交出现在 git log 中,但分支在 Github 中不存在
- javascript - 删除 http://localhost:3000/people/[object%20Object] 404(未找到)
- php - 新的 ClassName 是否与 ClassName::class 相同 - PHP