| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 410 人关注过本帖
标题:请教:能否用字符串代表“自定义类型中的成员名称”
只看楼主 加入收藏
venomlk
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-2-18
收藏
 问题点数:0 回复次数:3 
请教:能否用字符串代表“自定义类型中的成员名称”
例如:
class abc
{
    public int a;
    public int b;
    public int c;
}
string bl="b";
abc k=new abc{a=1,b=2,c=3};
正常情况下是:messagebox.show(k.b.tostring());
我想实现的类似方式是:k.b中的b,我想用字符串("b")来代替(也就是说,也可以用字符串"c"来代替k.c),不知是否可以,请教下各位老师,谢谢
搜索更多相关主题的帖子: 名称 int abc 字符串 public 
2020-07-11 11:30
zbjzbj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:郑州
等 级:版主
威 望:43
帖 子:543
专家分:2687
注 册:2011-4-22
收藏
得分:0 
int c;c是变量
“c”是常量,是固定不变的
2020-07-12 01:59
venomlk
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-2-18
收藏
得分:0 
回复 2楼 zbjzbj
多谢版主回复。。
可能是我没有表达清楚,我再举个例子。。呵呵
class1 c=new class1();  
c.a=1;   类里有一个a属性
c.b="a"; 同时还有一个b属性
1、messagebox.show(c.b);   一般情况下需要这么写来获取类中的b属性的值
2、messagebox.show(c.gettype().getproperty("b").getvalue(c, null).tostring());  也能这么写,同时把getproperty("b")改为getproperty("a")也能获取a属于的值
但是第二条语句只能用于“对象中的属性”,不能用于“自定义类型中的成员变量”

我的最终目的是想用一个变量"bl"来代替自定义类型中的成员名称"a"或"b"。。不知我表达清楚没有。。呵呵
2020-07-12 09:24
venomlk
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-2-18
收藏
得分:0 
已通过其它方法变通解决,多谢大家关注
2020-07-15 10:24
快速回复:请教:能否用字符串代表“自定义类型中的成员名称”
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.094202 second(s), 8 queries.
Copyright©2004-2020, BCCN.NET, All Rights Reserved