报错:invalid use of incomplete type ‘class XXX’

问题描述:定义模板类,使用前向声明引入class XXX,类定义中使用了指针,即XXX spXXX,以上OK。但模板在头文件中实现,实现过程中调用spXXX->Refresh()。
上述代码出了问题:在Window VS中可以执行编译,但移植到Linux时会报上述错误
解决:引入class XXX的头文件。

报错:changes meaning of ‘XXX’ from ‘enum A::B::XXX’

问题描述:使用类的同名的变量 GraphicGroup GraphicGroup;
上述声明在window vs中可以编译通过,但在Linux下会报错。
解决: GraphicGroup gGraphicGroup

导出

window #define XXX_Export __declspec(dllexport)
linux #define XXX_Export __attribute__((visibility(“default”)))

#define中含有 换行符和注释符

#define aaa \
std::cout<<“123”;\
//int a=1;\
std::cout<<“123”;
上述代码Linux可以编译,window编译会报错

类中声明函数 头文件 void A::Refresh();

window允许

class A:
{public:
void A::Refresh();
}

Linux编译不允许 只能

 class A:{public:    void Refresh();}

Linux移植遇到问题记录相关推荐

  1. ARM的嵌入式Linux移植体验之操作系统

    转自:[url]http://dev.yesky.com/153/2527653.shtml[/url] 06-08-13 08:00 作者: 宋宝华 出处: 天极开发 责任编辑:方舟 在笔者撰写的& ...

  2. 基于ARM的嵌入式Linux移植真实体验(3)――操作系统

    基于ARM的嵌入式Linux移植真实体验(3)――操作系统 宋宝华[email]21cnbao@21cn.com[/email] 出处:dev.yesky.com 在笔者撰写的<C语言嵌入式系统 ...

  3. ZYNQ Linux 移植:包含petalinux移植和手动移植debian9

    问题: 1.ZYNQ Linux启动流程: BOOTROM→FSBL→Uboot→Kernel→RootFS 环境: 虚拟机ubuntu16.04 petalinux2018.3 vivado2018 ...

  4. linux移植嵌入式系统,嵌入式系统学习——S3C2451之Linux移植步骤

    Linux内核裁剪.根文件系统制作.系统烧录 环境: Redhat5 Mini2451开发板 linux-3.6内核 这几天学习了linux在mini2451开发板上的移植,以及后续的简单字符设备.混 ...

  5. 全志A33移植ubuntu系统记录(1)V1.0(分色排版)

    http://blog.csdn.net/lushengchu_luis/article/details/72457449 全志A33移植ubuntu系统记录(1) 大文实验室/大文哥 壹捌陆捌零陆捌 ...

  6. 将 Linux 移植到 M1 Mac 真的太难了!

    ????????关注后回复 "进群" ,拉你进程序员交流群???????? [CSDN 编者按]自去年苹果自研 M1 芯片发布之后,激发了无数用户的体验热情,与此同时,也吸引大批开 ...

  7. Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)

    Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核) 文章目录 Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4 ...

  8. arm linux 移植全部过程

    arm linux 移植全部过程 总述 面向的读者 正文 现代计算机系统的工作模式 BOOT-ROM U-Boot Makfile 总述 之前做过linux在powerpc上的移植,当然过程曲折,内容 ...

  9. Linux移植之auto.conf、autoconf.h、Mach-types.h的生成过程简析

    在Linux移植之make uImage编译过程分析中分析了uImage文件产生的过程,在uImage产生的过程中,顺带还产生了其它的一些中间文件.这里主要介绍几个比较关键的文件 1.linux-2. ...

最新文章

  1. 如何调试进入Asp.NET MVC源代码
  2. boost::reference_wrapper用法实例
  3. Linux系统编程----7(信号集,信号屏蔽,信号捕捉)
  4. python深拷贝_python 深拷贝与浅拷贝的区别
  5. java代码创建jar_Java 创建ZIP和JAR文件
  6. java怎么让main方法不退出_JAVA线程池原理源码解析—为什么启动一个线程池,提交一个任务后,Main方法不会退出?...
  7. Android Native内存泄露检测(针对Android7.0)
  8. CPU占用率高的可能性与解决办法
  9. mysql如何设置数据库内存溢出_MySQL数据库之关于MySQL的整型数据的内存溢出问题的应对方法...
  10. Qt播放常见视频格式的方法
  11. 随机森林实现回归预测(糖尿病数据集)
  12. Jpg格式图片如何缩小?怎么把jpg格式图片变小?
  13. 你的性格是什么颜色的?乐嘉《性格色彩学》测试题
  14. 企业会计准则第34号——每股收益(2006)
  15. 科技云报道:“Sky Computing”会是云计算未来的新方向吗?
  16. 文本到图像模型,如何快速生成高质量图片? #Google Muse AI
  17. 三方协议中的服务器,手把手教你三方协议怎么填
  18. nodejs+vue音乐网站与分享平台
  19. 即时通讯mysql压力_Soul即时通讯之数据库优化
  20. Chrome浏览器上传和下载就会崩溃的解决方法

热门文章

  1. Geodatabase中基于规则的拓扑关系管理机制
  2. Java代码生成同一色系颜色_求大侠帮忙给这段JAVA代码 设置个背景颜色!
  3. 分享一张前端知识点思维导图
  4. (三)HTML 规范
  5. hover时候缓慢切换两张图片
  6. 歌词数据解析、歌词滚动、歌词进度控制功能的实现(基于js-base64、lyric-parser、better-scroll),以vue项目为例
  7. P3805 【模板】manacher算法
  8. 在写HTML和CSS时的黄金规范
  9. CoInitialize和CoInitializeEx
  10. oracle 数据库字段名与实体类字段名称不匹配的处理方法