1,Qt类读取目录
QDir读取目录内容--将读取结果输出到一个QMultiLineEdit对象
QMultiLineEdit *medit;
medit = new QMultiLineEdit(this);----显示所查找到的文件
linux下/目录在window平台下编译 ,它会被自行转换为C:\创建QDir对象
QFileInfo::readLink()符号连接所指的源文件
owner()
2,处理文本和理解常规表达式--验证功能--确保用户输入正确信息QValidator,reglar express
Regular Expression --元字符(表示一个或多个常量字符---),转义序列--;
.匹配任意单个字符,^匹配字符串首字符^12,Ruiy$()匹配字符串结尾字符串
[]括号 内的任意字符 Meta characters
* 匹配任意数量 的前导字符+匹配前导字符*表示任意--最小可为0,+--不可为0
? 一个或0个
QRegExp::setWildcard(TRUE)
常规表达式,统配模式--匹配任意字符还是匹配前导符--零个,单个,多个
常规表达式--MetaCharacter
?--0 or 1
+--1~
*零个~
$^[] .
4,预定义验证class
QDoubleValidator and QIntValidator()验证双精度整数数值.
QDoubleValidator校验浮点
QDoubleValidator参数验证者能够接受的最小值,验证者能够接受的最少小数位数
QLineEdit对象使用dvalid(QDoubleValidator)验证输入字符的合法合需性
edit->setValidator(dvalid);
valid.o: In function `MyMainWindow::MyMainWindow()': valid.cpp:(.text+0x167): undefined reference to `vtable for MyMainWindow' valid.o: In function `main': valid.cpp:(.text.startup+0x43): undefined reference to `vtable for MyMainWindow' valid.cpp:(.text.startup+0x8c): undefined reference to `vtable for MyMainWindow' collect2: error: ld returned 1 exit status make: *** [double] Error 1
3,QIntValidator验证整数类,QDoubleValidator 验证浮点
省略代表最小位数的构造函数参数;
4,container
存储和访问容器类中对象,inline object
queue,stack;
栈--数据结构DataStruct,需要向列表中插入元素,之后用相反顺序(后进先出)
queue--队列--排队,列表与插入时相同的顺序(先进先出)检索元素
Qt用QStack and QQueue,对象列表,用相反顺序检索他们---栈
typedef QStack<char> StringStack;创建一个处理char元素的特殊类型,新类型别名StringStackChar
typedef QStack<int> IntStack
定义容器类--存储类型的C++方法;标准模板库STL(Standard Template Library)
栈用指针处理元素
typedef QStack<char*> StringStack
栈总是存储指针--内存Address
栈--压入push,弹出pop,QStack::push().QStack::pop()
QStack::pop()检索元素,删除它从列表中检索的元素,QStackCurrent()检索元素但不删除,为了从栈中删除一个元素而不检索,QStack::remove ,QStack从元素插入的另一端检索元素,QQueue