qt开发技巧与三个问题点

Posted yantuguiguziPGJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt开发技巧与三个问题点相关的知识,希望对你有一定的参考价值。

目录

qt技巧

问题一 error: C2143: 语法错误: 缺少“;”(在“*”的前面)

问题二 无法解析的外部符号 "public: virtual struct QMetaObject

问题三 缺少库文件SapClassBasic86.dll、SapClassBasic85.dll和SapClassBasic84.dll


开发技巧

右键 refactor 再rename,一键修改类名。

头文件里不放入第三库的依赖,在cpp文件里放入,并通过私有类的方式,引入第三库的类指针来使用。可以让头文件给别人使用的时候,别人不用依赖第三方库。

依赖的库放到代码外边,插件封装,工厂只有逻辑业务的代码。

工控机注意分区,让C盘扩大。

问题一 error: C2143: 语法错误: 缺少“;”(在“*”的前面)

Qt 报错:error: C2143: 语法错误: 缺少“;”(在“*”的前面)_Qt

这是因为,如有2个头文件a.h和 b.h,A.h有#include “B.h”,而b.h也有#include"A.h",同时B.h头文件中有a类的对象(即有A a)等,这样造成

A.h与B.h之间无限循环引用,即会导致以上的错误。解决方法是在B.h头文件的类前声明一下A类即可(即class A;)。

-----------------------------------

Qt 报错:error: C2143: 语法错误: 缺少“;”(在“*”的前面)

Qt 报错:error: C2143: 语法错误: 缺少“;”(在“*”的前面)_mb5fe559d8b9ae4的技术博客_51CTO博客

问题二 无法解析的外部符号 "public: virtual struct QMetaObject

hcameradalsaline.obj:-1: error: LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __cdecl WorkerThread::metaObject(void)const " (?metaObject@WorkerThread@@UEBAPEBUQMetaObject@@XZ)

加上下面这句就可以了

#include "debug/hcameradalsaline.moc"

问题三 缺少库文件SapClassBasic86.dll、SapClassBasic85.dll和SapClassBasic84.dll

Sapera_LT_8.30_SDK.exe在两台电脑上安装的结果文件不一致。

这是由于SDK版本未注意,不对应。

一台是:Sapera_LT_8.30_SDK.exe

另一台是:Sapera_LT_8.60_SDK.exe

起初我以为是i7和i9问题,弄错方向了。

电脑一:

 

电脑二:

缺少库文件SapClassBasic86.dll、SapClassBasic85.dll和SapClassBasic84.dll

 

以上是关于qt开发技巧与三个问题点的主要内容,如果未能解决你的问题,请参考以下文章

qt开发技巧与三个问题点

qt开发技巧与三个问题点

Qt开发经验小技巧181-185

CSS 技巧,冲鸭!

盒子模型之margin相关技巧!

20 个让你效率更高的 CSS 代码技巧