VS QT 里头文件的<>和““的区别

news2024/9/8 10:31:37

今天在跑项目的时候遇到这么个问题,在添加api宏定义的时候,不加显示无法识别的外部错误,加了显示找不到文件。反正就是怎么都是错的,但是我检查了CmakeLists、模块所在文件夹、项目路径都是没有问题的。非常奇怪。

然后就开始尝试各种可能的错误,最后死马当活马医的改了一下头文件引入符号,把引入<xxxapi.h>文件改成了"xxxapi.h",哎奇了个怪了,就跑通了。明明<>的搜索范围是包含了""的,咱也不知道为什么就是不行,只能说编码规范问题,多注意吧。

正好乘此机会,总结一下<>和""的区别,给自己提个醒。


一、“ <> ”的作用

<>:通常用于引用标准库头文件或系统提供的库头文件。编译器会在标准系统路径下搜索这些头文件。

敲重点,编译器会在标准系统路径下搜索这些头文件。

示例

#include <iostream> // 引用标准库头文件
#include <QtCore/QDebug> // 引用 Qt 核心模块的头文件

 二、‘ "" ’的作用

"":通常用于引用自定义或项目特定的头文件。编译器会首先在当前项目目录下搜索这些头文件,然后再搜索系统路径。

敲重点,编译器会首先在当前项目目录下搜索这些头文件。

示例

#include "mycustomclass.h" // 引用项目中自定义的头文件

明确了二者的搜索范围,我们就清楚了最开始的问题: 

对于自定义的头文件,理论上来说,使用<>也应该能够找到头文件,前提是需要将自定义头文件放在编译器能够搜索到的标准系统路径下。但通常情况下,我们更倾向于使用""来包含自定义的头文件,因为这样更直观和方便。 

如果自定义头文件放在了系统标准路径下,使用 < > 是可以找到的。但如果头文件放在项目目录下或其他非系统路径下,使用 " " 是更好的选择,因为这样可以明确告诉编译器去当前项目目录下搜索。

而实际操作上也看到了,说是可以找到,但是我就没有找到。所以大家还是按编码规范来最好!


奇怪的知识又增加了! 

都看到这里了,点个赞再走呗朋友~

加油吧,预祝大家变得更强!

点赞!点赞!点赞!

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

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

相关文章

Stable Diffusion WebUI能运行但无法调试,一直报错:TypeError: ‘Task‘ object is not callable

Stable Diffusion WebUI正常运行模式&#xff08;Run&#xff09;能运行&#xff0c;但是调试模式&#xff08;Debug&#xff09;无法运行&#xff0c;一直报错&#xff1a;TypeError: ‘Task‘ object is not callable ⚙️1.软件环境⚙️&#x1f50d;2.问题描述&#x1f50d…

【vue/uniapp】ucharts 可以横向拖动查看数据(当图表数据过多时),避免叠加

效果参考&#xff1a; 实现&#xff1a; 需要在 opts 中配置&#xff1a;enableScroll: true 和 ontouch:true&#xff1b;在 opts 的 xAxis 中配置&#xff1a;itemCount: 5&#xff08;值可以自定义&#xff0c;如图&#xff0c;为默认展示几个&#xff09;&#xff1b; …

theharvester一键收集域名信息(KALI工具系列十)

目录 1、KALI LINUX简介 2、theharvester工具简介 3、在KALI中使用theharvester 3.1 用搜索引擎扫描 3.2 扫描并输出结果 3.3 扫描某域名下的所有账号 3.4 使用所有的搜索引擎扫描 4、总结 1、KALI LINUX简介 Kali Linux 是一个功能强大、多才多艺的 Linux 发行版&…

vue koa post 请求代理失败问题总结

场景是在使用 koa 写接口时&#xff0c;客户端发送 post 请求&#xff0c;服务端会报下面这个错误&#xff0c;导致接口未能访问成功&#xff1a; 前端接口一直 Pending 状态&#xff0c; 解决方案&#xff1a;走的是本地 mock 数据&#xff0c;未访问服务端的接口 总结&#x…

AWR中的电磁仿真算法---特点与运用场景

AWR中的电磁仿真算法—特点与运用场景 在使用AWR软件进行射频电路、芯片设计时&#xff0c;发现其中有非常多的仿真器选项&#xff0c;这些电磁仿真器有什么特点呢&#xff1f;在此简单分析介绍。 算法名称运用场景特点AXIEM算法微带线、带状线、MMIC矩量法运算&#xff0c;…

自用升级centos7.2的默认Python 2.7.5为python3.8

wget https://www.python.org/ftp/python/3.8.8/Python-3.8.8.tgztar zxvf Python-3.8.8.tgz 进入刚刚解压后的目录 ./configure --prefix/data/soft/python3按照上面截图所属&#xff0c;需要安装gcc 安装报错需要安装 sudo yum install zlib1g-dev make -j4 make install -…

芯品荟 | 理疗仪屏驱案例分享

PART ONE 市场简介 - Market Profile - 理疗仪&#xff08;Physiotherapy instrument&#xff09;是物理治疗仪器的简称&#xff0c;是将物理因子作用于人体&#xff0c;使之产生好转的设备&#xff0c;适用于家庭、办公室等场所。 红外理疗仪能发挥作用&#xff0c;主要靠…

OTA在线旅行社系统架构:连接世界的科技纽带

随着互联网的快速发展和人们对旅行需求的不断增长&#xff0c;OTA&#xff08;Online Travel Agency&#xff09;在线旅行社成为了现代旅行业中的重要一环。OTA系统架构的设计和实现将对旅行行业产生深远影响。本文将探讨OTA在线旅行社系统架构的重要性和关键组成部分&#xff…

走进波士顿科学公司,艾威张老师为其分享项目管理方法,提升员工项目管理能力!

2024年5月22日下午&#xff0c;艾威培训公司应邀为波士顿科学公司PMO部门举办了一场特别的项目管理在线知识分享。本次分享由艾威培训项目管理讲师张老师主讲&#xff0c;主题为“一小时读懂项目管理”。此次活动旨在帮助波士顿科学公司的员工更好地理解项目管理的基本概念和实…

5.29高通技术分享抢先看 | 2024高通边缘智能创新应用大赛公开课

火力全开&#xff01;2024高通边缘智能创新应用大赛首期公开课将在5月29日晚上8点炫酷启动&#xff01; 届时&#xff0c;来自大赛主办方高通技术公司的产品市场总监李骏捷和高级资深工程师李万俊将于云端聚首&#xff0c;带来一场关于边缘智能的前沿技术对话。 各位参赛者及…

LLM提示工程的技巧

1. 从简单开始&#xff08;Start Simple&#xff09; 避免在一开始就增加太多的复杂性。 从简单的提示开始&#xff0c;然后在后续提示中添加更多信息和上下文。 这样&#xff0c;提示就是一个迭代过程&#xff0c;提示在此过程中进一步发展。 从简单的开始&#xff0c;就有足…

基于transformers框架实践Bert系列5-阅读理解(文本摘要)

本系列用于Bert模型实践实际场景&#xff0c;分别包括分类器、命名实体识别、选择题、文本摘要等等。&#xff08;关于Bert的结构和详细这里就不做讲解&#xff0c;但了解Bert的基本结构是做实践的基础&#xff0c;因此看本系列之前&#xff0c;最好了解一下transformers和Bert…

力扣503. 下一个更大元素 II

Problem: 503. 下一个更大元素 II 文章目录 题目描述思路复杂度Code 题目描述 思路 由于此题是环形数组&#xff0c;我们在利用单调栈模板的基础上还需要将给定数组扩大一倍&#xff0c;但实际上我们只需要利用取余的操作模拟扩大数组即可&#xff08;具体操作看代码。在解决有…

git push后一直卡在在Writing objects:问题

git push后一直卡在Writing objects: 解决&#xff1a;设置 git config --global http.postBuffer 5242880000在执行git push。 一般设置后就可以成功了&#xff0c;后面不用看。 2. 我这里结果又报错&#xff1a; fatal: protocol error: bad line length 8192 MiB | 107.46 …

科技与心理学的协同舞蹈

在探讨盲人如何利用如“蝙蝠避障”这样的辅助软件融入日常生活的同时&#xff0c;我们不得不深入触及盲人教育心理学的核心&#xff0c;这一领域致力于理解盲人在学习与成长过程中独特的心理需求与挑战&#xff0c;以及如何通过教育策略激发他们的潜能&#xff0c;促进全面发展…

帝国CMS验证码不显示怎么回事呢?

帝国CMS验证码有时候会不显示或打叉&#xff0c;总结自己的解决方法。 1、检查服务器是否开启GD库 测试GD库是否开启的方法&#xff1a;浏览器访问&#xff1a;/e/showkey/index.php&#xff0c;如果出现一堆乱码或报错&#xff0c;证明GD库没有开启&#xff0c;开启即可。 2…

统信UOS专业版操作系统如何安装惠普打印机驱动

通用集成驱动安装方法 以惠普P1566激光打印机为例介绍一下&#xff0c;在打印机管理器中选择打印机&#xff0c;手动选择安装驱动&#xff0c;找到品牌&#xff1a;惠普&#xff0c;型号&#xff1a;1566&#xff0c;安装驱动后测试打印&#xff1b;LaserJet Pro P1566 Foomati…

springcloud 之 Ribbon Hystrix Feign bus 动态修改配置

Ribbon 是微服务架构图中负责负载均衡的 组件。 BeanLoadBalancedpublic RestTemplate getRestTemplate() {return new RestTemplate();}测试如下&#xff1a; //微服务方式 Ribbon方式GetMapping("ribbon/{name}")public String RibbonTest(PathVariable String nam…

vulhub——Aria2、bash、catic

文章目录 一、Aria2 任意文件写入漏洞二、CVE-2014-6271&#xff08;Bash Shell 漏洞&#xff09;三、CVE-2022-46169&#xff08;Cacti 前台命令注入漏洞&#xff09; 一、Aria2 任意文件写入漏洞 Aria2是一个命令行下轻量级、多协议、多来源的下载工具&#xff08;支持 HTTP…

C# WPF入门学习主线篇(四)—— Button的常用属性

本期来详细介绍一下WPF中Button组件的属性都有哪些 一、准备阶段 首先&#xff0c;打开我们之前创建好的工程。 这是我们之前几期一起做过的工程&#xff0c;现在重新创建一个button&#xff0c;来熟悉一下他的属性。 选中创建的button&#xff0c;点击属性栏 二、接下来介绍…