日期:2014-05-20  浏览次数:20991 次

struct结构成员访问的问题!!在线等!!!!
自定义二个struct
public   struct   test
                {
                        public   String   tmp001;
                        public   String   tmp002;
                        public   String   tmp003;
                        public   String   tmp004;
                        public   String   tmp005;

                };
例如我想引用tmp001这个成员,除了   test.tmp001   之外,还有没有其他方法?
就是最好能动态的指定需要访问的成员.比如,传给我一个数值2,我就去访问tmp002成员,传给我一个20,我就访问tmp020这个成员

如果这样的想法实现不了,也请高手给定个性,我好死了这个心

------解决方案--------------------
GetValue(t) 写落了
------解决方案--------------------
参考 我写的这个
http://blog.csdn.net/jetxia/archive/2007/02/09/1505985.aspx
------解决方案--------------------
如果你的变量名都像tmp00x这样有规律的话,用反射就可以了,
参见
http://blog.csdn.net/tjvictor/archive/2007/01/24/1492079.aspx

------解决方案--------------------
学习了
------解决方案--------------------
mark+up
------解决方案--------------------
1.用反射
2.用if或switch判断
------解决方案--------------------
mark
---------------------------------------
俺兜兜里有糖
------解决方案--------------------
public static string GetTestValue(test t,int i) {
string str;
if (i < 10)
{
str = "tmp00 ";
}
else if (i < 100)
{
str = "tmp0 ";
}
else {
str = "tmp ";
}
return (string)typeof(test).GetField(str + i).GetValue(t);
}
------解决方案--------------------
Macosx() 的方法不行吗?

如果楼主的结构仅仅是这么简单的
可以用数组来得更快