社区
C++ 语言
帖子详情
100分求教反射问题
Elever
2004-06-25 10:07:05
C++可以实现反射吗??
如果可以
该怎么实现??
给出方案,经测试后立即给分
谢谢
...全文
275
16
打赏
收藏
100分求教反射问题
C++可以实现反射吗?? 如果可以 该怎么实现?? 给出方案,经测试后立即给分 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
北极猩猩
2004-06-28
打赏
举报
回复
实际上反射就是在对象的运行期为对象添加可查询的类型信息。
比如,MFC里面的反射实现是通过宏将这些元数据信息作为对象的一个静态属性添加到对象里
而.net和java是通过编译器和runtime来完成元数据的管理和插入的
Wolf0403
2004-06-26
打赏
举报
回复
在一个类型体系框架内使用注册机制就可以做到。不论 MFC, .net 还是 Java 都是这样的。
nscboy
2004-06-26
打赏
举报
回复
不知道C++Bulder是怎样实现的.
sandrowjw
2004-06-25
打赏
举报
回复
你必须在编译期知道每一个类的类型信息。
一种变通的方法是用Entity-Property类来模拟,把成员函数、成员变量都作为Property挂上去,但实际上功能和性能都很勉强,还不如用注册表和正确地设计类的层次关系。
ibelieveicandie
2004-06-25
打赏
举报
回复
不支持反射。但是可以通过注册每一个类的方法模拟实现。
yjh1982
2004-06-25
打赏
举报
回复
汗~~不是叫你用MFC,而是参考它的做法呀.
qwertasdfg123
2004-06-25
打赏
举报
回复
忘了
#include <iostream>
using namespace std;
qwertasdfg123
2004-06-25
打赏
举报
回复
不知道如下可不可以:
// WIN2000 VC6
#define CREATECLASS(type, name) typedef struct tag##name { type i; } name
int main()
{
CREATECLASS(int,myclassname);
myclassname m;
m.i=10;
cout << m.i << endl;
return 0;
}
qwertasdfg123
2004-06-25
打赏
举报
回复
你说的反射应该是RTTI吧。
Elever
2004-06-25
打赏
举报
回复
MFC是一套框架啊
要把它挪到Linux下太恼火了
难道除了MFC就没有别的办法实现了吗?
yjh1982
2004-06-25
打赏
举报
回复
原理不一样么.C++本身不支持
Elever
2004-06-25
打赏
举报
回复
你说的实dynamic的宏吧
问题是它其实不能算C++的实现方案
在linux下使用面向对象的思想
如何搞?
yjh1982
2004-06-25
打赏
举报
回复
那就是了嘛
Elever
2004-06-25
打赏
举报
回复
简言之,给出类名,产生对应类的实例
qwertasdfg123
2004-06-25
打赏
举报
回复
MFC是消息反射。
楼主说的反射是指。。。。。。?
yjh1982
2004-06-25
打赏
举报
回复
MFC好象就是.
pip-matplotlib-3.6.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.zip
pip-matplotlib-3.6.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.zip
YOLO算法室内安防障碍物目标检测数据集-64张-标注类别为障碍物.zip
YOLO算法室内安防障碍物目标检测数据集-64张-标注类别为障碍物.zip
C++ 语言
65,210
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章