zoukankan      html  css  js  c++  java
  • 嵌套 struct & class 的遍历

      假设有如下的结构或者类,那么我们怎么遍历它们呢?

        public  struct AAAAA
        {
            public  struct BBBBB
            {
                public struct CCCCC
                {
                    public static string ZZ = "ZZ";
                    public struct DDDDD
                    {
                        public static string ZZ = "ZZ";
                    }
                }
    
            }
        }
    

      遍历代码参考:

            static void A777()
            {
                Console.WriteLine(AAAAA.BBBBB.CCCCC.ZZ);
                Console.WriteLine(typeof(AAAAA).FullName);
                Any(typeof(AAAAA));
    
            }
    
            static void Any(Type sub)
            {
                foreach (var m in sub.GetMembers(System.Reflection.BindingFlags.Public))
                {
                    Console.WriteLine($"Member:{m.Name}=>>{m.ReflectedType.FullName}");
                }
                foreach (var t in sub.GetNestedTypes())
                {
                    Console.WriteLine($"struct:{t.Name}=>>{t.FullName}");
                    Any(t);
                }
            }
    

      结果:

    ZZ
    ConsoleApp1.AAAAA
    Member:BBBBB=>>ConsoleApp1.AAAAA
    struct:BBBBB=>>ConsoleApp1.AAAAA+BBBBB
    Member:CCCCC=>>ConsoleApp1.AAAAA+BBBBB
    struct:CCCCC=>>ConsoleApp1.AAAAA+BBBBB+CCCCC
    Member:DDDDD=>>ConsoleApp1.AAAAA+BBBBB+CCCCC
    struct:DDDDD=>>ConsoleApp1.AAAAA+BBBBB+CCCCC+DDDDD
    

      

  • 相关阅读:
    application , application pool., W3wp ,httpapplication, domain
    HDFS
    spark
    Hive
    container docker
    Azure&& hdinsight
    Native Code
    拥抱重构
    六个重构方法可帮你提升80%的代码质量
    重构 小步进行曲
  • 原文地址:https://www.cnblogs.com/honk/p/12842676.html
Copyright © 2011-2022 走看看