- 主题:C语言是怎么处理反射需求的?
汗,看大家讨论了这么多页,还是不知道什么是反射。
不过 “结构体第一个byte标识数据类型”应该是种常见做法 ...
【 在 wdrq83 的大作中提到: 】
: 这个太简单了,结构体第一个byte标识数据类型即可
--
FROM 14.16.218.*
用宏,数组可以实现,网上有C++实现反射的思路,C来实现也一样
--
FROM 202.101.0.*
每个成员都标?
我可是针对普通结构,甚至是第三方软件的结构,改不得的。
【 在 wdrq83 的大作中提到: 】
: 这个太简单了,结构体第一个byte标识数据类型即可
--
FROM 221.221.51.*
可以实现stl。但是运行时解析还是不行。
【 在 tianyalaike 的大作中提到: 】
: 用宏,数组可以实现,网上有C++实现反射的思路,C来实现也一样
--
FROM 221.221.51.*
55楼的函数怎么实现?
【 在 gluon521 的大作中提到: 】
: C语言不需要反射,你可以直接读写内存
:
--
FROM 221.221.51.*
简单说,在运行时随便给你一个结构,如何知道它里边有哪些成员,都什么类型,有多长,存放在哪里。
JAVA是可以的。C不行。但是这个功能是很有用的。楼主的意思,怎么解决?
我的答案,自己补一个说明书。
哪怕是第三方软件定义的结构,都可以给它补个说明书,或称模板。
一个结构配一个模板,提交给泛型程序去处理。
【 在 il15 的大作中提到: 】
: 汗,看大家讨论了这么多页,还是不知道什么是反射。
: 不过 “结构体第一个byte标识数据类型”应该是种常见做法 ...
:
--
修改:ylh1969 FROM 221.221.51.*
FROM 221.221.51.*
很多场合并不在乎这点性能损失
【 在 ylgao1987 (卖报的小行家) 的大作中提到: 】
:
: 用反射的都是懒人,所有反射都没必要,你是否知道反射效率极低?
:
: 【 在 dylen 的大作中提到: 】
--
FROM 182.150.57.*
多谢!基本就用C,没用过其它语言...
然后不懂就继续问:能够举个简单的例子,说明一下“结构的成员类型,长度”有用的例子吗?
【 在 ylh1969 的大作中提到: 】
: 简单说,在运行时随便给你一个结构,如何知道它里边有哪些成员,都什么类型,有多长,存放在哪里。
: JAVA是可以的。C不行。但是这个功能是很有用的。楼主的意思,怎么解决?
: 我的答案,自己补一个说明书。
: ...................
--
FROM 14.16.218.*
有。手机不方便,等开电脑弄一点实例
【 在 il15 的大作中提到: 】
: 多谢!基本就用C,没用过其它语言...
: 然后不懂就继续问:能够举个简单的例子,说明一下“结构的成员类型,长度”有用的例子吗?
:
--
FROM 221.221.51.*
搞好了性能不低
【 在 mywindows 的大作中提到: 】
: 很多场合并不在乎这点性能损失
--
FROM 221.221.51.*