• VS2015 C#6.0 中的没有实现/支持的特性


     

    VS2015 C#6.0 中的没有实现/支持的特性

     

    1、数组增强:赋值

    1维数组

    Int[] numbers

    numbers = {2,3,4,5};

    2维数组

    Int[,] numbers2;

    numbers2= {[2,3,4,5],{6,7,8,9}};

    2、类型增强:可以扩展现有类型

    3、表达式增强:可以重载任意操作符

    1 扩展现有int类型,重载乘方运算符

    public static partial struct int

    {

    public static operator ** ( int a, int b)

    { return …; }

    }

    调用

    int result = 4**3; // 4*4*4

    int result =

    2 扩展现有数组,重载四则运算符

    public static partial class int[]

    { public static operator + (int[] A, int[] B);

    }

    调用

    int[] A,B;

    int[] C = A+B;

    3. 扩展现有Complex,添加属性

    public static partial class Complex

    { public Complex I

    {get

    {Complex result = new Complex(0,1);

    return result;

    }

    }

    }

    调用

    Complex c = 1+2*I;// 1+2i;

    为了类型安全,避免混淆,需要引用专门的命名空间

    using namespace Lim;//

    命名空间放在language integrated mathematics下。

    在不支持任意操作符的语言中,操作符自动转换为静态函数

    例如乘方运算**在常规语言可以转换为 multiply_multiply(,);

     

     

  • 相关阅读:
    Sunnypig闯三角关
    送给圣诞夜的贺卡
    uva 1592(NEERC 2009 STL)
    uva 297(传递闭包 WF 1996)
    hdu 4190(二分)
    uva 3592 (MST, kruskal)
    uva 11997 (基础数据结构)
    hdu 2680 (Dijkstra)
    hdu 4568(状态压缩dp)
    hdu 4582 (树上的贪心)
  • 原文地址:https://www.cnblogs.com/xiexiaokui/p/4702834.html
Copyright © 2020-2023  润新知