gcc选项-fno-access-control 使用

news/2024/9/28 21:32:42 标签: c++, cmakelist 编译选项

背景:

在进行eigen库进行移植时,总是报编译错误:

error: 'struct std::basic_stringbuf<_CharT, _Traits, _Alloc>::__xfer_bufptrs' redeclared with different access struct __xfer_bufptrs

,单独写一个测试程序使用eigen库,编译跟运行都正常,但继承到项目中就是编译不通过,百思不得其解,后来查看资料,发现是这个项目中在编写单元测试时,修改了代码的访问权限导致的。

问题解决:

1.删除掉代码中修改权限代码。

// #undef private
// #undef protected
// #define private   public
// #define protected public

#include "XXXXX.hpp"

// #undef private
// #undef protected
// #define private   private
// #define protected protected

2.在cmakelist中添加编译选项-fno-access-control

set(CMAKE_CXX_FLAGS "-fno-access-control")

使用-fno-access-control 选项可以实现对私有成员的访问,比使用预定义的方式规范。

参考链接:

C++ 单元测试 访问控制小坑 - 技术学习小站


http://www.niftyadmin.cn/n/5681885.html

相关文章

物理学基础精解【30】

这里写目录标题 微分导数一、导数的定义二、导数的几何意义三、导数的计算四、导数的应用 微分的定义一、基本概念二、数学定义三、具体形式四、几何意义五、与导数的关系 可微性与连续性一、连续性的定义二、可微性的定义三、可微性与连续性的关系四、结论 反函数的导数和隐函…

基于yolov8的海上红外目标系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的海上红外目标系统是一项集成了前沿技术的创新解决方案&#xff0c;专为复杂海洋环境下的目标检测而设计。该系统利用YOLOv8深度学习模型的强大目标检测能力&#xff0c;结合红外成像技术&#xff0c;实现了对海上小型船只、浮标、甚至水下潜器等目标…

Qt 每日面试题 -5

41、单继承和多继承 单继承&#xff08;派生类只从一个直接基类继承)时派生类的定义∶ class 派生类名:继承方式 基类名 { 成员声明; } 多继承 时派生类的定义∶ class 派生类名:继承方式1 基类名1&#xff0c;继承方式2 基类名2&#xff0c;… { 成员声明; } 注意:每一个“继…

Python/大数据/机器识别毕业设计选题题目推荐

基于Python和Diango在线购物商城系统报告文档指导搭建视频 基于深度学习的人脸识别与管理系统&#xff0c;Python实现 基于Python/机器学习链家网新房数据可视化及预测系统 Python豆瓣电影情感分析推荐系统爬虫可视化&#xff0c;过滤算法 基于python的django框架生鲜商城管…

代码随想录第二十天:动态规划、斐波那契数列、爬楼梯、最小体力爬楼梯

1.动态规划理论 理论讲解链接&#xff1a;代码随想录 (programmercarl.com) 对于动态规划问题&#xff0c;可以拆解为如下五步曲 确定dp数组&#xff08;dp table&#xff09;以及下标的含义确定递推公式dp数组如何初始化确定遍历顺序举例推导dp数组 2.斐波那契数列 dp数组…

项目实战总结-Kafka实战应用核心要点

Kafka实战应用核心要点 一、前言二、Kafka避免重复消费2.1 消费者组机制2.2 幂等生产者2.3 事务性生产者/消费者2.4 手动提交偏移量2.5 外部存储管理偏移量2.6 去重逻辑2.7 幂等消息处理逻辑2.8 小结 三、Kafka持久化策略3.1 持久化文件3.2 segment 分段策略3.3 数据文件刷盘策…

多线程复杂系统调试利器——assert()

调试复杂系统时&#xff0c;最大的难点在于定位问题&#xff0c;如果弄清楚了问题产生的机理&#xff0c;那么就能有针对性的进行解决。 调试复杂系统时&#xff0c;遇到不好定位的问题&#xff0c;就要大胆去猜、去怀疑、去假设&#xff0c;尤其是应该重点怀疑多线程访问&…

联宇集团:如何利用CRM实现客户管理精细化与业务流程高效协同

在全球化的浪潮中&#xff0c;跨境电商正成为国际贸易的新引擎。作为领先的跨境电商物流综合服务商&#xff0c;广东联宇物流有限公司(以下称“联宇集团”)以其卓越的物流服务和前瞻的数字化战略&#xff0c;在全球市场中脱颖而出。本文将基于联宇集团搭建CRM系统的实际案例&am…