freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

qt諾基亞官方中文教程l3_qt的數(shù)據(jù)類型機(jī)會(huì)及(編輯修改稿)

2025-06-03 18:11 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 oreach(QString text, texts) doSomething(text)。 QStringList texts。 foreach(const QString amp。text, texts) doSomething(text)。 const QListint sizes = splittersizes()。 QListint::const_iterator i。 for(i=()。 i!=()。 ++i) processSize(*i)。 由于隱性共享,復(fù)制代價(jià)低廉 使用常量的引用有助于提高性能。不使用它,仍然無(wú)法讓你改變列表的內(nèi)容 與 STL的交互 ? QList 能與相應(yīng)的 std::list相互轉(zhuǎn)換 ? 與 STL的相互轉(zhuǎn)換意味著對(duì)列表內(nèi)容進(jìn)行深度復(fù)制 – 不存在隱含共享 QListint list。 list 0 1 1 2 3 5 8 13。 std::listint stlList = ()。 QListint otherList = QListint::fromStdList(stlList)。 從 Qt 列表到 STL列表 從 STL列表 到 Qt 列表 其他集合 ? 誰(shuí)能代替 QList,它們跟 QList有何區(qū)別? ? QLinkedList ? 用索引訪問(wèn)緩慢 ? 使用迭代器很快 ? 快速(恒定時(shí)間)在列表的中間插入 ? QVector ? 使用連續(xù)的內(nèi)存空間 ? 插入和置首緩慢 其他集合 ? 注意,攤銷行為( amortized behavior)是指在實(shí)時(shí)環(huán)境中不可預(yù)知的次數(shù) ? 其他集合是以 Qlist為基礎(chǔ)的 ? QStringList ? QStack ? ueue ? QSet Collection Index access Insert Prepend Append QList O(1) O(n) Amort. O(1) Amort. O(1) QLinkedList O(n) O(1) O(1) O(1) QVector O(1) O(n) O(n) Amort. O(1) 特殊情況 QStack ? 堆,一個(gè)后進(jìn)先出( LIFO)的容器 后進(jìn)先出 ? 列表項(xiàng)壓入堆 ? 列表項(xiàng)彈出堆 ? 用 top()取出頂項(xiàng) () () QStackint stack。 (1)。 (2)。 (3)。 qDebug(Top: %d, ())。 // 3 qDebug(Pop: %d, ())。 // 3 qDebug(Pop: %d, ())。 // 2 qDebug(Pop: %d, ())。 // 1 qDebug(isEmpty? %s, ()?yes:no)。 特殊情況 ueue ? 隊(duì)列,一個(gè)先進(jìn)先出( FIFO)的 容器 先進(jìn)先出 ? 項(xiàng)排隊(duì)進(jìn)入隊(duì)列 ? 項(xiàng)從隊(duì)列中出列 ? 取第一項(xiàng)可以用 head() () () ueueint queue。 (1)。 (2)。 (3)。 qDebug(Head: %d, ())。 // 1 qDebug(Pop: %d, ())。 // 1 qDebug(Pop: %d, ())。 // 2 qDebug(Pop: %d, ())。 // 3 qDebug(isEmpty? %s, ()?yes:no)。 特殊情況 QSet ? 一個(gè)集合包含值,但對(duì)每個(gè)值只有一個(gè)實(shí)例。 ? 可以判斷一個(gè)值是否是集合的一部分 ? 也可以遍歷一個(gè)集合,看到所有的值 ? 可以轉(zhuǎn)換一個(gè) QList 到一個(gè) QSet QSetint primes。 primes 2 3 5 7 11 13。 for(int i=1。 i=10。 ++i) qDebug(%d is %sprime, i, (i)?:not )。 foreach(int prime, primes) qDebug(Prime: %d, prime)。 QListint list。 list 1 1 2 2 2 3 3 5。 QSetint set = ()。 qDebug() list。 // (1, 1, 2, 2, 2, 3, 3, 5) qDebug() set。 // (1, 2, 3, 5) 鍵 值集合 ? QMap和 QHash類讓你創(chuàng)建關(guān)聯(lián)數(shù)組 QHashQString, int hash。 hash[Helsinki] = 1310755。 hash[Oslo] = 1403268。 hash[Copenhagen] = 1892233。 hash[Stockholm] = 2022047。 foreach(const QString amp。key, ()) qDebug(%s, qPrintable(key))。 QMapQString, int map。 map[Helsinki] = 1310755。 map[Oslo] = 1403268。 map[Copenhagen] = 1892233。 map[Stockholm] = 2022047。 foreach(const QString amp。key, ()) qDebug(%s, qPrintable(key))。 if((Oslo)) { qDebug(Oslo: %d, (Oslo))。 } 使用 QMap ? QMap 類需要操作符 來(lái)定義關(guān)鍵類型 此操作符用來(lái)保持鍵的順序 ? 填充使用運(yùn)算符 []或 insert來(lái)完成 ? 對(duì)于讀取,用 value 結(jié)合 contains if((Oslo)) qDebug(Oslo: %d, (Oslo))。 qDebug(Berlin: %d, (Berlin,42))。 map[Stockholm] = 2022047。 (London, 13945000)。 可選默認(rèn)值。如果沒(méi)有指定一個(gè)默認(rèn)值將返回構(gòu)造值 用 value 而不是 [] 以避免誤增加項(xiàng) 哈希 ? QMap使用了給定的模板中的類型的鍵 ? QHash 使用 uint 值 ? key類型散列到一個(gè) uint值 ? 運(yùn)用 uint 值 可能提高性能 ? 哈希值表示鍵沒(méi)有排序 ? 哈希函數(shù)必須設(shè)法避免碰撞,以達(dá)到良好的性能 使用 QHash ? 鍵類型必須提供一個(gè) qHash 函數(shù)和操作符 == 到QHash ? 相對(duì) Qmap, 填充和讀取相同 uint qHash(const Person amp。p) { return () + qHash(())。 } bool operator==(const Person amp。first, const Person amp。second) { return ((() == ()) amp。amp。 (() == ()))。 } 哈希函數(shù)應(yīng)該根據(jù)已知的啟發(fā)式優(yōu)化 一鍵多值 ? QMultiMap和 QMultiHash提供支持一鍵多值的關(guān)聯(lián)數(shù)組 QMultiMapQString,int multiMap。 (primes, 2)。 (primes, 3)。 (primes, 5)。 ... (fibonacci, 8)。 (fibonacci, 13)。 foreach(const QString amp。key, ()) { QListint values = (key)。 QStringList temp。 foreach(int value, values) temp QString::number(value)。 qDebug(%s: %s, qPrintable(key), qPrintable((,)))。 } value 返回每個(gè)鍵的最后插入 , values 返回鍵的所有值的列表 keys 為每個(gè)值重復(fù)每個(gè)鍵 , 使用 uniqueKeys一次獲取每個(gè)鍵 沒(méi)有 [], 用 insert QMap 和 QHash 也支持這個(gè) 使用 insertMulti 休息 Qt的類型定義 ? C + +中沒(méi)有定義嚴(yán)格跨平臺(tái)類型的大小 sizeof(int) = ? ? 對(duì)于跨平臺(tái)的代碼,以嚴(yán)格的方式定義的所有類型是很重要的 ARM = 4 bytes x86 = 4 bytes IA64 = 8 bytes ... 取決于 CPU架構(gòu), 操作系統(tǒng), 編譯器等 跨平臺(tái)類型 Type Size Minimum value Maximum value uint8 1 byt
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1