• C#关健字


    ==========================================================

    yield关健字

     var q = GetNums(5);

      public static IEnumerable GetNums(int nums)
            {
                int result = 0;

                for (int i = 0; i < nums; i++)
                {
                    result = i;
                    yield return result;

                }
            }

    结果输出0,1,2,3,4五个数

    msdn

    yield 关键字向编译器指示它所在的方法是迭代器块。 编译器生成一个类来实现迭代器块中表示的行为。 在迭代器块中,yield 关键字与 return 关键字结合使用,向枚举器对象提供值。 这是一个返回值,例如,在 foreach 语句的每一次循环中返回的值。 yield 关键字也可与 break 结合使用,表示迭代结束。 有关迭代器的更多信息,请参见迭代器(C# 编程指南) 下面的示例演示两种形式的 yield 语句。

    yield return <expression>;
    yield break;
    

    ============================================================

     ref键字

     static void Method(ref int i)
            {
                // Rest the mouse pointer over i to verify that it is an int.
                // The following statement would cause a compiler error if i
                // were boxed as an object.
                i = i + 44;
            }

            static void Main()
            {
                int val = 1;
                Method(ref val);
                Console.WriteLine(val);

                // Output: 45
            }

    ===================================================================================

    out 键字

        static void Method(out int i)
        {
            i = 44;
        }
        static void Main()
        {
            int value;
            Method(out value);
            // value is now 44
        }

  • 相关阅读:
    Python 学习笔记 -- 列表的基本使用
    帮助你构建云服务的开源平台:openstack
    一个基于Asterisk构建的VOIP应用软件:Elastix介绍
    Asterisk项目概述
    Asterisk 代码架构概述
    云计算投入成本分析
    撕去服务器虚拟化和云计算的神秘面纱
    VOIP开源项目源码地址
    websocket技术
    JSP页面静态化总结之一使用URLRewrite实现url地址伪静态化
  • 原文地址:https://www.cnblogs.com/qq4004229/p/2541518.html
Copyright © 2020-2023  润新知