zoukankan      html  css  js  c++  java
  • 创建基于栈的数组

    using System;
    
    namespace exercise {
        class Program {
            static unsafe void Main(string[] args) {
                //创建基于栈的数组
                decimal* pDecimals = stackalloc decimal[10];
    
                int size;
                size = 20; //or some other value calculated at runtime
                double* pDoubles = stackalloc double[size];
                //把第一个元素(数组元素0)设置为3.0
                *pDoubles = 3.0; // pDoubles[0] is the same as *pDoubles
                //把数组的第二个元素(元素编号1)设置为8.4
                *(pDoubles + 1) = 8.4; // pDoubles[1] is the same as *(pDoubles +1)
                //可以用表达式 *(pDoubles + X) 访问数组中下标为X的元素。
                //如果p是任意指针类型,X是一个整数,表达式 p[X]就会被编译器解释为*(p + X),这适合于所有指针。
    
                //下面的代码会抛出一个异常,抛出异常的原因是:使用越界的下标来访问数组
                double[] myDoubleArray = new double[20];
                myDoubleArray[50] = 3.0;
                //如果使用stackalloc声明一个等价的数组,对数组进行辩解检查时,这个数组中就没有封装任何对象,
                //因此下面的代码不会抛出异常:
                pDoubles[50] = 3.0;
    
            }
        }
    }

    --摘自《C#高级编程》

  • 相关阅读:
    ext表格范例
    基于对象的EXT组件间通信
    hibernate自定义生成主健
    Amcharts
    ExtJS之面向对象编程基本知识
    在Ext里写大应用 (翻译:米米饭)
    EXT表单常用验证
    JPA 复合主键
    PowerDesign15常用技巧
    spring security和EXT
  • 原文地址:https://www.cnblogs.com/grj1046/p/2854252.html
Copyright © 2011-2022 走看看