zoukankan      html  css  js  c++  java
  • 泛型之关键字default、where

    ①:default

          在泛型中,要为某个使用泛型的变量初始化值,可是我们需要考虑的是这个泛型可能是引用类型,也可能是值类型,这时我们可以借助default来完成初始化复制。T value = default(T);如果T是引用类型,value = null,如果是T是值类型,value = 0.

    ②:where

                                           约束                                                                  说明

                                    where T:struct                                     使用结构约束,类型T必须是值类型

                                    where T:calss                                       类约束指定,类型T必须是引用类型

                                    where T:IFoo                                            指定类型T必须执行结构IFoo

                                    where T:Foo                                            指定类型T必须派生于基类Foo

                                   where T:new()                                       指定类型T必须有一个默认构造函数 

                                     where T:U                                          类型T派生于泛型类型V(裸类型约束)

       (注:在CRL2.0中,只能为默认构造函数定义约束,不能为其他构造函数定义约束)

  • 相关阅读:
    bfs入门 (HDU
    Codeforces Round #570 (Div. 3)B
    nyoj 277-车牌号 (map, pair, iterator)
    nyoj 276-比较字母大小 (顺序比较, 逆序输出)
    nyoj 275-队花的烦恼一 (stack, push, pop)
    nyoj 274-正三角形的外接圆面积 (R = PI * a * a / 3)
    nyoj 273-字母小游戏 (getline(cin, string))
    nyoj 268-荷兰国旗问题 (count)
    nyoj 266-字符串逆序输出 (isdigit(), geline(cin, my_string))
    nyoj 264-国王的魔镜 (string[-1:-int(str_len/2+1):-1])
  • 原文地址:https://www.cnblogs.com/wangyong/p/1654639.html
Copyright © 2011-2022 走看看