摘要:
1. Ubuntu的源中已有ejabberd,直接通过apt-get安装即可 2. 安装完成后可以通过浏览器来访问后台页面,默认端口是5280 3. 这个时候需要提供用户名和密码,可以通过命令 ejabberdctl 注册用户, 这个时候默认的域名是localhost,可以通过修改配置文件/etc/ 阅读全文
摘要:
Qt的默认的窗口和Windows原生相同,所有的功能也很完整。但启用了FramelessWindowHint标志之后,点击窗口底部的工具栏无法隐藏窗口。 解决的方案是增加一个标志 Qt::FramelessWindowHint 阅读全文
摘要:
打包脚本的流程和自动打包基本相同: 1. 编译软件 2. 拷贝需要的内容 3. 代码签名 4. 打包成安装文件 5. 再次签名,并将安装文件名称改成需要的格式 编译软件需要初始化vs的运行环境,如 然后开编译。 编译完成,拷贝文件,使用signtool对软件进行签名, 最后将其修改为需要的命名风格, 阅读全文
摘要:
发布Qt程序的时候需要给程序添加图标和信息描述。 在Windows平台下,可以在pro文件中添加一个rc文件来描述软件的信息。 rc文件包含的描述信息如下 注意:rc文件的格式需要为无Bom头的UTF-8或者ANSI,包含Bom的UTF-8会导致编译失败。 如果在pro中仅仅添加一个icon文件,则 阅读全文
摘要:
Qt的某些控件在输入文本的时候需要关闭输入法。如密码输入框输入密码的时候不希望显示输入法的输入条。 不能简单的通过QValidator来实现,因为此时仅仅修改了输入框接受的文本内容,输入法的输入条仍然会出现。 可以通过QWidget的InputMethod方法来实现,在应用程序查询控件是否支持输入法 阅读全文
摘要:
软件环境:MacOSX 10.11 + QtCreator + Boost 1.60 首先编译Boost自带的例子测试能否正常编译。此处使用的文件在boost_1_60_0/libs/log/example/basic_usage。因为使用的是QtCreator进行编译,使用了Qt的pro文件进行代 阅读全文
摘要:
1. 注释从“#”开始,到这一行结束。 2. 模板变量告诉qmake为这个应用程序生成哪种makefile。下面是可供使用的选择:TEMPLATE = appA> app -建立一个应用程序的makefile。这是默认值,所以如果模板没有被指定,这个将被使用。B> lib - 建立一个库的makef 阅读全文
摘要:
<!--?xml version="1.0" encoding="UTF-8" standalone="no"?--> 3.1 继承构造函数 通过using关键字可以继承父类的构造函数。也可以通过显式定义构造函数来阻止继承。 3.2 委派构造函数,减少构造函数的书写 class Info { pub 阅读全文
摘要:
基础内容 1.指针与引用的区别 任何情况下都不能使用指向空值的引用,使用时必须初始化。这使得使用引用时的效率比使用指针要高,因为在使用之前不需要测试它的合法性。 引用总是指向在初始化时指定的对象,以后不能改变。 重载某个操作符时,应该使用引用。 2.尽量使用C++风格的类型转换 static_cas 阅读全文
摘要:
在Java中有一个很好用的Builder模式实现方法。此处使用C++仿照Java的版本实现Builder模式。 在C++中内部类和外部类是没有直接关系的,不能通过内部类访问外部类的私有对象也不能通过外部类访问内部类的私有对象。所以此处使用friend关键字来增强内部类对于外部类的访问,主要是访问外部 阅读全文