数组下标是字符串的实现using System;
数组下标是字符串的实现
数组下标是字符串的实现namespace Oceansoft.LOGERP.MessageClient.MessageHeadAffirm
数组下标是字符串的实现{
数组下标是字符串的实现    
/// <summary>
数组下标是字符串的实现    
///  报文头的形成  
数组下标是字符串的实现    
///  作者:贾海天
数组下标是字符串的实现    
/// </summary>
数组下标是字符串的实现    
public class MessageHead
数组下标是字符串的实现    {
数组下标是字符串的实现        
//相关数组中存储项目的数组
数组下标是字符串的实现        protected object
[] _items;
数组下标是字符串的实现        
//数组中的项目数
数组下标是字符串的实现        protected 
int _count=0;
数组下标是字符串的实现        
public int Length
数组下标是字符串的实现        {
数组下标是字符串的实现            get
数组下标是字符串的实现            {
数组下标是字符串的实现                
return _count;
数组下标是字符串的实现            }            
数组下标是字符串的实现        }
数组下标是字符串的实现        
public object this[string key]
数组下标是字符串的实现        {
数组下标是字符串的实现            get
数组下标是字符串的实现            {
数组下标是字符串的实现                
return KeyToObject(key);
数组下标是字符串的实现            }
数组下标是字符串的实现            
set
数组下标是字符串的实现            {
数组下标是字符串的实现                AddToArray(
key,value);
数组下标是字符串的实现            }
数组下标是字符串的实现        }
数组下标是字符串的实现        protected bool KeyExists(string 
key)
数组下标是字符串的实现        {
数组下标是字符串的实现            
for (int n=0;n<_count;n++)
数组下标是字符串的实现            {
数组下标是字符串的实现                KeyItemPair pair
=(KeyItemPair)_items[n];
数组下标是字符串的实现                
if (pair.key==key)
数组下标是字符串的实现                {
数组下标是字符串的实现                    
return true;
数组下标是字符串的实现                }
数组下标是字符串的实现            }
数组下标是字符串的实现            
return false;
数组下标是字符串的实现        }
数组下标是字符串的实现        protected void AddToArray(string 
key,object item)
数组下标是字符串的实现        {
数组下标是字符串的实现            
if (!KeyExists(key))
数组下标是字符串的实现            {
数组下标是字符串的实现                _items
[_count]=new KeyItemPair(key,item);
数组下标是字符串的实现                _
count++;
数组下标是字符串的实现            }            
数组下标是字符串的实现        }
数组下标是字符串的实现        protected object KeyToObject(string 
key)
数组下标是字符串的实现        {
数组下标是字符串的实现            
for (int n=0;n<_count;++n)
数组下标是字符串的实现            {
数组下标是字符串的实现                KeyItemPair pair
=(KeyItemPair)_items[n];
数组下标是字符串的实现                
if (pair.key==key)
数组下标是字符串的实现                {
数组下标是字符串的实现                    
return pair.item; 
数组下标是字符串的实现                }
数组下标是字符串的实现            }
数组下标是字符串的实现            
return null;
数组下标是字符串的实现        }
数组下标是字符串的实现        
public MessageHead(int MessageHead_Length)
数组下标是字符串的实现        {
数组下标是字符串的实现            
//
数组下标是字符串的实现            
// TODO: 在此处添加构造函数逻辑
数组下标是字符串的实现            
//
数组下标是字符串的实现            _items
=new object[MessageHead_Length];
数组下标是字符串的实现        }
数组下标是字符串的实现        protected struct KeyItemPair
数组下标是字符串的实现        {
数组下标是字符串的实现            
public object item;
数组下标是字符串的实现            
public string key;
数组下标是字符串的实现            
public KeyItemPair(string k,object obj)
数组下标是字符串的实现            {
数组下标是字符串的实现                
key=k;
数组下标是字符串的实现                item
=obj;
数组下标是字符串的实现            }
数组下标是字符串的实现        }
数组下标是字符串的实现    }
数组下标是字符串的实现}
数组下标是字符串的实现
使用方法(方法不是很完整,可以继续扩展):
数组下标是字符串的实现MessageHead MH=new MessageHead(3);
数组下标是字符串的实现MH
["Confirm_NO"]="aaa";
数组下标是字符串的实现MH
["IO_Seq"]="bbb";
数组下标是字符串的实现MH
["Gross_Pack_NO"]="ccc";
数组下标是字符串的实现

注意:
Struct 的实现是在栈里面实现的
Class   实现是在托管堆里面实现的
Class里面的方法是在托管堆里面的方法表里面保存的.



此方法也可以用 Hashtable 来实现,具体实现将在以后进行研究

相关文章: