C#   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c# – 如何在开放泛型类型中定义构造函数?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在开放的泛型类型上创建,它有一个构造函数供派生类型使用,但我要么不知道怎么做,要么不可能 – 不确定哪个.

public struct DataType<T> : IDataType {

    private T myValue;
    private TypeState myState;

    internal DataType<T>(T initialValue,TypeState statE) {
        myValue = initialValue;
        myState = state;
    }
 }

任何帮助非常感谢!

科特

编辑:构造函数最初发布为私有,这是错误的,应该受到保护.但是 – 结构中不允许保护,因此我将其更改为内部.

解决方法

构造函数没有泛型参数,就像可以使用T的类的任何常规方法一样,但也不是通用的.

public class DataType<T> : IDataType {

    private T myValue;
    private TypeState myState;

    protected DataType(T initialValue,TypeState statE) {
        myValue = initialValue;
        myState = state;
    }
 }

请注意,不能继承结构,并且不能通过继承类来调用私有构造函数.改变这两个,以使其工作.

大佬总结

以上是大佬教程为你收集整理的c# – 如何在开放泛型类型中定义构造函数?全部内容,希望文章能够帮你解决c# – 如何在开放泛型类型中定义构造函数?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。