QT初探

1、signal/slot机制:这是QT对C++的一个贡献;

2、

const QString& text() const;

这里第二个const用来修辞实例类型,要求实例必须是const类型的。

3、explict关键字的作用,参考百度文库:http://wenku.baidu.com/view/fbc3ba69a45177232f60a2ec.html

4、widgets includes button,textarea,dialog etc.Layout provides us lots of tools to put these widgets together fitly.

5、Qt undifined reference to vtable for..错误解决办法:由于cpp类引入了Q_OBJECT,需要生成moc文件,但没有生成。在当前工程目录下,命令行执行qmake -project重新生成一遍pro文件,重新再编译工程即可。疑问:Qt Creator本身为什么不能解决该问题,还必须在命令行重新生成pro文件呢?

6、strlen计算char*的长度,sizeof计算的它的指针的长度。

7、向文本文件写入换行,windows下"\r\n",unix下“\n”

8、Qt引用C文件问题。系统提示:undefined reference to ***(**)方法。检查程序发现,.h文件都已经引入到工程了,这是为什么呢?经过网上搜索,说是C/C++兼容性的问题。通过修改c的.h文件,在调用的方法前加入extern,问题解决。新旧文件对比:

旧文件:

 

#ifndef _D3_H

#define _D3_H
int Run3D(intbType, int bMode,const char *In,unsigned int in_len,const char *Key,unsigned int key_len,char*Out, unsigned intout_len, const charcvecstr[8]);

#endif


新文件:

#ifndef _D3_H

#define _D3_H
#ifdef __cplusplus
extern "C" {
#endif
extern int Run3D(intbType, int bMode,const char *In,unsigned int in_len,const char *Key,unsigned int key_len,char*Out, unsigned intout_len, const charcvecstr[8]);

#ifdef __cplusplus

}
#endif

  
#endif 


 

其他文件不用修改。

9、printf("%02x",char);//按照16进制格式输出char,不能写成%x,如果高半字节为0,不输出。

10、今天终于解决了JNI调用Qt显示窗口的问题。破费周折,而且花费了几个晚上,不过还是解决了问题。关键的是QtSDK下面的QtCore\QtGui有很多dll,你要知道你编译发布dll时用的是哪个包。另外,通过Qt写jni动态库,和用VC写语法上并无太多的差别。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值