看板 C_and_CPP 關於我們 聯絡資訊
我寫了一個注音輸入法的頁面 目前已經完成 但想到一個問題 因為輸入法一定有一個字碼表 這個字碼表若存在記憶體中約有數k 現在我的寫法像是這樣 static const *char[]={... a lot of string...} class MyPage: public Page { ... } 也就是我把表格變成file scope 以方便MyPage中各函數使用 如果我觀念沒錯的話file scope物件的生命週期直至程式結束 這樣等於我為了一個使用者不一定會進來的頁面 配置了數k的記憶體 所以我希望改成放在class中 並且取消static 但遇到一個新的問題 const array無法在初值串列中初始化 除了0以外 我是可以用nonconst來實作 但不知是否有更好的做法或架構?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.140.149
loveme00835:把字串存在別的檔案裡, 等到真的有人進來再把檔案部份 02/13 03:44
loveme00835:/全部載入到記憶體, 用物件集中管理, 並提供唯讀介面 02/13 03:45
loveme00835:東西不一定真的要是 const 02/13 03:46
VictorTom:其實OS的輸入法也一樣是不一定會開, 但系統啟動時就跑起 02/13 16:48
VictorTom:來佔著資源啊; 再說這種程度的記憶體, OS的記憶體管理機 02/13 16:48
VictorTom:制應付起來應該綽綽有餘. 資源很有限的環境就另當別論@@ 02/13 16:49