作者查詢 / poyenc

總覽項目: 發文 | 留言 | 暱稱
作者 poyenc 在 PTT 全部看板的留言(推文), 共266則
限定看板:全部
看板排序:
Re: [心得] X86 架構下的 Memory Model
[ C_and_CPP ]29 留言, 推噓總分: +4
作者: poyenc - 發表於 2021/07/20 02:50(2年前)
4Fpoyenc: 好奇你怎麼不看 Hans-J. Boehm 的提案還有論文, 而是看網07/19 02:10
5Fpoyenc: 路上的文章07/19 02:10
26Fpoyenc: 其實可以想想一個問題: 如果我們學習語言的途徑是透過看書07/21 16:04
27Fpoyenc: ; 那麼書的作者又是用什麼方式來學習? 編譯器開發者又是憑07/21 16:04
28Fpoyenc: 什麼依據來實作?07/21 16:04
[心得] X86 架構下的 Memory Model
[ C_and_CPP ]11 留言, 推噓總分: 0
作者: Instance - 發表於 2021/07/18 11:25(2年前)
6Fpoyenc: 好奇你怎麼不看 Hans-J. Boehm 的提案還有論文, 而是看網07/19 02:10
7Fpoyenc: 路上的文章07/19 02:10
[問題] +-運算子 順序
[ C_and_CPP ]25 留言, 推噓總分: +7
作者: ooww - 發表於 2021/02/14 13:18(3年前)
16Fpoyenc: #1UdQMfoa02/14 16:12
[問題] C++ sort函數在leetcode上使用問題
[ C_and_CPP ]11 留言, 推噓總分: +2
作者: wilson50101 - 發表於 2020/07/17 17:39(3年前)
7Fpoyenc: 這是因為 call syntax 還沒有 unify 的緣故, 看回覆晚點補07/18 09:57
8Fpoyenc: 充07/18 09:57
Re: [討論] 對於同事的coding style感到很感冒
[ C_and_CPP ]49 留言, 推噓總分: +2
作者: lovejomi - 發表於 2020/05/13 16:10(4年前)
1Fpoyenc: const 不是為了避免修改, 而是要求物件的行為 consistent05/13 17:07
2Fpoyenc: 這是為什麼 mutable 存在的原因, 這可以從兩個角度來看:05/13 17:10
3Fpoyenc: 1) 給物件的人 2) 收物件的人, 對於收的人來說加上 const05/13 17:14
4Fpoyenc: 是希望物件的外顯行為能一致, 這是基本假設. 對給的人來說05/13 17:15
5Fpoyenc: 加上 const 是用來限縮可用介面, 也許是為了避免狀態被改05/13 17:17
6Fpoyenc: 動, 或者只是想提供不同的介面組合給對方 (使用 ref05/13 17:21
7Fpoyenc: qualifier 也可以達成類似目的). 所以收的時候需要注意綁05/13 17:23
8Fpoyenc: 定的 value category 以及 constness, 給的人也要看情況使05/13 17:23
9Fpoyenc: 用 std::forward()/std::move()/std::as_const()05/13 17:24
10Fpoyenc: 所以 pass by value 的情況下不用加上 const 的原因是使05/13 17:30
11Fpoyenc: 用者只有執行函式的執行緒, 所以要求行為一致是沒有意義的05/13 17:31
12Fpoyenc: noexcept 的用意和 throw() 不一樣, 在 C++ 裡我們應該預05/13 17:57
13Fpoyenc: 設所有函式都會 throw 但你可以透過 throw() 來說你其實不05/13 17:58
14Fpoyenc: 會 throw, 而編譯器所做的相應處理是把 propagate excepti05/13 17:59
15Fpoyenc: on 的 code 拿掉, 換句話說 noexcept 是優化的手段和05/13 18:00
16Fpoyenc: exception handling 策略無關, 那取捨其實就看團隊了, 大05/13 18:01
17Fpoyenc: 部分針對 scalar type 的操作比較容易加上 noexcept 來優05/13 18:01
18Fpoyenc: 化, 而其他情形就看你們對效能的要求來做決定. 這都是需要05/13 18:02
19Fpoyenc: 先做 profiling05/13 18:03
22Fpoyenc: 跟是不是 primitive 無關, 由預期的行為決定加不加 const05/13 18:19
23Fpoyenc: 如果你期望兩次 std::cout << i << std::endl; 出來的值都05/13 18:20
27Fpoyenc: 要一樣, 不應該有其他執行緒去更改值, 最好加上 const 來05/13 18:20
28Fpoyenc: 表達意圖05/13 18:21
29Fpoyenc: 沒錯, 但 noexcept 與否應該藉由實作程式碼來決定而不是反05/13 18:26
30Fpoyenc: 過來由介面限制實作, 你在裡面寫了 try-catch 其實是和編05/13 18:26
31Fpoyenc: 譯器做類似的事情, 所以我們才會用 noexcept() 運算子來決05/13 18:27
32Fpoyenc: 定函式的 signature 而不是用人工去比對05/13 18:28
38Fpoyenc: @FRAXIS 要看你對該 instance variable 型別有什麼要求,05/13 22:05
39Fpoyenc: 在介面受限的情況下是不是還能實作你想要的類別, 來去決定05/13 22:06
40Fpoyenc: constness, @lovejomi 只是比較常和 committee member 討05/13 22:07
41Fpoyenc: 論而已, 我覺得要看你對 const 的理解是到語法層還是語意05/13 22:08
42Fpoyenc: 層, 我的習慣是預設全加 const, 還有需要 noexcept 的情況05/13 22:10
43Fpoyenc: 全用 noexcept(bool) 來決定. 預設全加 const 是為了減輕05/13 22:11
44Fpoyenc: 讀碼的負擔還有方便驗證, 不過 pass by value 不會加const05/13 22:12
45Fpoyenc: 因為這情況在介面加 const 是多餘的05/13 22:13
[問題] 請問我這個程式能用迴圈做嗎?
[ C_and_CPP ]23 留言, 推噓總分: +7
作者: IOP14759 - 發表於 2020/03/27 14:01(4年前)
21Fpoyenc: std::bitset 可以做到你要的功能 https://bit.ly/2UMnn2z03/29 05:53
22Fpoyenc: indexing 寫錯 :p https://bit.ly/2wNhGJJ (C++17)03/29 06:00
[問題] 一維陣列 -> 二維函數
[ C_and_CPP ]4 留言, 推噓總分: +3
作者: Hack - 發表於 2019/10/17 14:58(4年前)
3Fpoyenc: https://wandbox.org/permlink/VjbVmkDN31DrNF6M10/19 01:53
Re: [問題] 關於不同資料卻得到相同地址的問題
[ C_and_CPP ]25 留言, 推噓總分: +7
作者: poyenc - 發表於 2019/09/11 23:22(4年前)
5Fpoyenc: 答案是: 不一定為真09/12 16:33
9Fpoyenc: 簡單說語言的設計, 指標被允許儲存除了位址以外的資訊, 像09/13 12:35
10Fpoyenc: 是型別等, 唯一被保證透過指標運算還可以正確取値的只有陣09/13 12:36
11Fpoyenc: 列元素, 也就是說同個陣列裡, 元素 A 的位址可以用元素 B09/13 12:37
12Fpoyenc: 的位址算出來, 而且可以正確取値; 但是不同陣列間的元素就09/13 12:38
13Fpoyenc: 不能這樣算, 因為單純的指標運算也許會丟失必要的資訊; 另09/13 12:39
14Fpoyenc: 外, 物件在這個例子裡被視為只有一個元素的陣列.09/13 12:40
15Fpoyenc: 這是語言裡抽象機器 (abstract machine) 想要表達的概念,09/13 12:42
16Fpoyenc: 如果用實體機器的行為去解釋就會發生衝突, 譬如在 64bit09/13 12:44
17Fpoyenc: 機器上用 sizeof(int*) 就以為指標大小是 8 個 bytes, 語09/13 12:44
18Fpoyenc: 言並沒有規定指標內容就是虛擬記憶體的位址09/13 12:45
22Fpoyenc: 這就要看編譯器實作了, 我說的只是一種其中可能性, 而探討09/13 14:09
23Fpoyenc: 語言特性的時候, 不要被實作限制想像空間, 例如用位址去查09/13 14:11
24Fpoyenc: 找物件型別是可行的, 不過遇到指標轉型該怎麼辦呢?09/13 14:13
[問題] 請教一個處理array的問題
[ C_and_CPP ]22 留言, 推噓總分: +9
作者: WillBeFine - 發表於 2019/09/12 00:21(4年前)
7Fpoyenc: 2F 是 undefined behavior, 指標加回來並且還可以存取陣列09/12 01:47
8Fpoyenc: 元素的前提是: 它原本就指向陣列元素09/12 01:48
22Fpoyenc: 樓上可以參考 http://eel.is/c++draft/expr.add#4.209/13 13:01
Re: [問題] constexpr 與 static const 的選擇
[ C_and_CPP ]7 留言, 推噓總分: +1
作者: poyenc - 發表於 2019/06/13 13:33(4年前)
7Fpoyenc: 你指的如果是不存在於 object file 的話, 對喔06/14 00:20