QT:debug,打不开头文件以及qDebug和Q_CLASSINFO的使用

news2025/7/17 10:05:00

这个是因为链接器在给定路径上搜索不到对应的头文件,而大多数的Qt相关的头文件都集中在一个include文件夹里:

我电脑上的路径是:C:\Qt\Qt5.9.7\5.9.7\msvc2017_64\include

然后我们在项目设置里:

 注意,这边要加上\*,因为include里的文件才是我们想要的:

 //Qdebug的源码:

 我们可以看到qDebug其实是一个函数的宏,我们会发现,这个函数是返回了一个QDebug类:

 我们继续跟踪这个类:

 发现这个类里面有一个内部类为Stream,大概作用应该是对接到C++的标准流上面,在上面做一些处理工作,适配器?

然后我们看看我们最关心的格式问题,及QDebug这个类能接受什么样的数据:

 这个文件是可写文件,我们也可以在里面承载自己的类;

实验一下:

 

 没问题!

当然,我们要在项目设置里->链接器->子系统中将控制台给调出来才能看见结果;

Q_CLASSINFO

这个宏的话,好像跟踪不到;

但是更具我们的观察来看,其像一个map,有一个name和一个value;

 左边是name,右边是value,但是我没知道有什么东西能能从name映射到value

我们可以通过在类内部声明这一句话,来给类添加一些信息:

 调用方法也很简单:

 运行结果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/36857.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java】Assert.assertEquals断言

Assert.assertEquals 1.概述 在开发中,我们需要测试时候,不可能把全部程序运行一次,在此我们就需要通过编写单元测试来对程序进行测试了。在 Assert 类里面有大量的静态方法,本篇的主角就是 Assert.assertEquals 这个静态方法。该…

day12_类中成员之方法

成员变量是用来存储对象的数据信息的,那么如何表示对象的行为功能呢?就要通过方法来实现 方法 概念: 方法也叫函数,是一个独立功能的定义,是一个类中最基本的功能单元。把一个功能封装为方法的目的是,可…

【知识网络分析】 一模网络(one node)

一模网络(one node) 1 本地文献读取并构建一模网络数据集2 网络数据集精简3 网络数据集中节点信息大小写转化4 获取一模网络中可使用的mode标签5 网络数据集清洗(以武汉大学信息管理学院为例)5.1 创建映射5.2 求解节点中count属性数值5.3 处理网络数据中的连线信息5.4 处理…

中文版:Spread .NET 16.0 -Winform-WPF-ASP.NET

Spread .NET 是一个功能、布局与 Excel 高度类似的 .NET表格控件,可全面满足 WinForm、ASP.NET、XAML 和 WinRT 等平台下表格数据处理、数据可视化开发需求。Spread .NET 支持 462 种 Excel 公式,提供可嵌入系统的类Excel设计器和全面开放的 API&#xf…

使用Python进行交易策略和投资组合分析

我们将在本文中衡量交易策略的表现。并将开发一个简单的动量交易策略,它将使用四种资产类别:债券、股票和房地产。这些资产类别的相关性很低,这使得它们成为了极佳的风险平衡选择。 动量交易策略 这个策略是基于动量的的,因为交易者和投资者…

美食杰项目 -- 编辑个人资料(六)

目录前言:具体实现思路:步骤:1. 展示美食杰编辑个人资料效果2. 引入element-ui3. 代码总结:前言: 本文给大家讲解,美食杰项目中 实现编辑个人资料页的效果,和具体代码。 具体实现思路&#xff…

【Java面经】阿里三面被挂、幸获内推,历经5轮终于拿到口碑offer

每一个互联网人心中都有一个大厂梦,百度、阿里巴巴、腾讯是很多互联网人梦寐以求的地方,而我也不例外。但是,BAT等一线互联网大厂并不是想进就能够进的,它对人才的技术能力和学历都是有一定要求的,所以除了学历以外&am…

面试官:单核 CPU 支持 Java 多线程吗?为什么?被问懵了

由于现在大多计算机都是多核CPU,多线程往往会比单线程更快,更能够提高并发,但提高并发并不意味着启动更多的线程来执行。更多的线程意味着线程创建销毁开销加大、上下文非常频繁,你的程序反而不能支持更高的TPS。 时间片 多任务…

Java项目:JSP员工出差请假考勤管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目为后台管理系统; 管理员角色包含以下功能: 登录,首页,考勤记录增删改查,假期申请记录增删改查,出差申请记录增删…

maven学习:maven 的入门

2.maven 的入门 到目前为止,我们已经大概了解并安装好了Maven,现在,我们开始创建一个最简单的Hello World项目。 2.1 在Idea创建maven项目 创建一个Maven项目也十分简单,选择”Create New Project" 选择”maven”选项,创…

留学推荐信如何写好个人优点和缺点?

留学推荐信是出国申请文书的重要文件之一,是一个从第三方(通常是以前的导师)从学术权威的角度对申请者的客观评价。评价的内容包括学术能力(Academic competence)、性格特点(Personal characteristics&…

如何使用 MySQL 做全文检索这件事

​前言 这有朋友聊到他们的系统中要接入全文检索,这让我想起了很久以前为一个很古老的项目添加搜索功能的事儿。 一提到全文检索,我们首先就会想到搜索引擎。也就是用一个词、一段文本搜索出匹配的内容。一般这种技术都有对应的实现方式,ES&…

从01背包说起(上)

目录 引入 1.什么是动态规划? 2.什么是背包问题? 3.什么是01背包? 模板题 1.题面 2.思路 Ⅰ为何不可用贪心 Ⅱ状态转移方程 3.代码 下期预告 引入 1.什么是动态规划? 动态规划(英语:Dynamic programming&#xff0…

MQTT,JSON,VSCODE(C语言编程环境)心得

VSCODE(C语言编程环境)心得 心得基于linux虚拟机和SSH方式,编辑基于VSCODE,编译基于GCC或G,调试基于GDB的插件,代码管理基于git。 安装GIT:sudo apt-get install git 配置GIT: git…

Mysql时间类型

多个timestamp 默认只对第一个timestamp自动更新时间

element-ui在项目当中的引入以及按需引入使用

目录 1.项目当中引入element-ui A.先使用npm安装 B.在main.js当中引入文件 C.在App.vue当中可以引用button相关的UI组件 2.element-ui配合脚手架按需引入 A.首先安装按需引入的插件 B.修改 .babelrc C.按需引入的好处 1.项目当中引入element-ui A.先使用npm安装 npm i …

【强化学习论文合集】ICML-2021 强化学习论文

强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现…

[附源码]Python计算机毕业设计电子工厂进销存管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

哲学讨论:未来的语言模型有没有可能具备意识和主观感受?

文|付奶茶编|ZenMoore问题背景近期,纽约大学心智、大脑和意识研究中心的主任 David Chalmers 汇报了一场非常有思考价值的研究成果,主要是从神经科学的角度讨论了大规模语言模型(Large Language Models,LLMs&#xff0…

刘强东这波操作秀

近日,刘强东发布京东全员信,信中提到:自2023年1月1日起,逐步为十几万德邦的兄弟们缴齐五险一金,确保每个德邦兄弟都能“老有所养,病有所医”,为兄弟们提供基础保障;集团拿出100亿元人…