当前位置: 首页 > news >正文

QT6 源(16):存储 QT 里元对象的类信息的类 QMetaClassInfo 的类,只有两个成员函数 name()、value(),比元对象属性简单多了

(1)所在头文件 qmetaobject.h

class Q_CORE_EXPORT QMetaClassInfo
{
private:  //private 属性里包含了至关重要的数据成员的定义,放前面
    struct Data {
        enum { Size = 2 };
        const uint * d;  //包含了数组的起始地址
        uint name () const { return d[0]; }
        uint value() const { return d[1]; }
    };
	Data data;
    const QMetaObject * mobj; //指向 QMetaObject 对象
    friend struct QMetaObject; //声明友元类
public:
    constexpr inline QMetaClassInfo() : // 无参构造函数
    	mobj(nullptr), data({ nullptr }) {}
    	
    const char *name () const; //返回类信息的名字
    const char *value() const; //返回类信息的值
    
    inline const QMetaObject *enclosingMetaObject() const 
    { return mobj; } //返回本类里的数据成员 QMetaObject * 指针
};
Q_DECLARE_TYPEINFO(QMetaClassInfo, Q_RELOCATABLE_TYPE);
//这个宏是规定本类  QMetaClassInfo 的存储属性 

(2)本类的这俩属性,只可以通过本类访问。无法通过 QObject 或 QMetaObject 类来访问

在这里插入图片描述

(3)

谢谢

http://www.dtcms.com/a/130119.html

相关文章:

  • 数据驱动,数字能量分析API助力手机号数据解读
  • RAG Fusion技术详解与应用场景
  • 趣味编程之Spring的白学之路
  • 二、Android Studio环境安装
  • [React] 如何用 Zustand 构建一个响应式 Enum Store?附 RTKQ 实战与 TS 架构落地
  • 波束形成(BF)从算法仿真到工程源码实现-第七节-关于波束10个基本概念
  • Jenkins 发送钉钉消息
  • 前端jest(vitest)单元测试快速手上
  • Redis基础知识:
  • 解释:指数加权移动平均(EWMA)
  • C++ 编程指南36 - 使用Pimpl模式实现稳定的ABI接口
  • 链接世界:计算机网络的核心与前沿
  • 使用SSH解决在IDEA中Push出现403的问题
  • 基于电子等排体的3D分子生成模型 ShEPhERD - 评测
  • 从代码学习深度学习 - 多头注意力 PyTorch 版
  • 【2025软考高级架构师】——项目管理(3)
  • 【毕设】Python构建基于TMDB电影推荐系统
  • L2范数与权重衰退
  • 烟花爆竹储存作业安全要求
  • nodejs构建项目
  • 前端开发中的问题排查与定位:HTML、CSS、JavaScript(报错的解决方式)
  • 高效的内容搜索工具推荐
  • 【工程开发】LLMC准确高效的LLM压缩工具(一)
  • MIPI协议介绍
  • (四十七)Dart 中的 `identical` 函数与 `const` 关键字
  • GM DC Monitor v2.0 数据中心监控预警平台-CMDB使用教程(第十篇)
  • 【图像处理基石】什么是通透感?
  • cropperjs 2.0裁剪图片后转base64提示“Tainted canvases may not be exported”跨域问题的解决办法。
  • 0x03.Redis 通常应用于哪些场景?
  • 【从0到1搞懂大模型】transformer先导:seq2seq、注意力机制、残差网络等(6)