介紹C/C++ 三元運算子的用法,在C/C++ 使用三元運算子(ternary operator) 好處是程式碼可以看起來比較簡短, 在某些情況C/C++ 使用三元運算子簡化後 ... ... <看更多>
「三元運算子c++」的推薦目錄:
- 關於三元運算子c++ 在 Re: [討論] 寫三元判斷式code review被打槍- 看板Soft_Job 的評價
- 關於三元運算子c++ 在 C/C++ 三元運算子 - ShengYu Talk 的評價
- 關於三元運算子c++ 在 【一個字Programming】#15 Ternary Operator 三元運算子 的評價
- 關於三元運算子c++ 在 C#三元運算子的使用方式 - YouTube 的評價
- 關於三元運算子c++ 在 網路上關於c語言運算子-在PTT/MOBILE01/Dcard上的升學考試 ... 的評價
- 關於三元運算子c++ 在 網路上關於c語言運算子-在PTT/MOBILE01/Dcard上的升學考試 ... 的評價
- 關於三元運算子c++ 在 網路上關於c語言運算子-在PTT/MOBILE01/Dcard上的升學考試 ... 的評價
- 關於三元運算子c++ 在 三元運算子| 他山教程,只選擇最優質的自學材料 的評價
- 關於三元運算子c++ 在 Re: [討論] 寫三元判斷式code review被打槍PTT推薦- Soft_Job 的評價
- 關於三元運算子c++ 在 Re: [討論] 寫三元判斷式code review被打槍 - PTT 熱門文章Hito 的評價
三元運算子c++ 在 【一個字Programming】#15 Ternary Operator 三元運算子 的推薦與評價
【一個字Programming】#15 Ternary Operator 三元運算子 已經寫咗三堂if else 連switch,如果成日都有if else,仲有冇方法寫短啲呢?其實係有㗎! ... <看更多>
三元運算子c++ 在 C#三元運算子的使用方式 - YouTube 的推薦與評價
本單元介紹C# 三元運算子 ,同時介紹使用巢狀 三元運算子. ... <看更多>
三元運算子c++ 在 網路上關於c語言運算子-在PTT/MOBILE01/Dcard上的升學考試 ... 的推薦與評價
其它運算符↦sizeof和三元... 還有其他一些重要的運算符,包括sizeof 和? : 在C語言中也支持。 顯示實例. 操作符, 描述 .. ... <看更多>
三元運算子c++ 在 網路上關於c語言運算子-在PTT/MOBILE01/Dcard上的升學考試 ... 的推薦與評價
其它運算符↦sizeof和三元... 還有其他一些重要的運算符,包括sizeof 和? : 在C語言中也支持。 顯示實例. 操作符, 描述 .. ... <看更多>
三元運算子c++ 在 網路上關於c語言運算子-在PTT/MOBILE01/Dcard上的升學考試 ... 的推薦與評價
其它運算符↦sizeof和三元... 還有其他一些重要的運算符,包括sizeof 和? : 在C語言中也支持。 顯示實例. 操作符, 描述 .. ... <看更多>
三元運算子c++ 在 三元運算子| 他山教程,只選擇最優質的自學材料 的推薦與評價
Ruby 有一個三元運算子( ?: ),它根據條件是否為truthy 返回兩個值中的一個: ... 它與寫作 if a then b else c end 相同,儘管三元是首選. ... <看更多>
三元運算子c++ 在 Re: [討論] 寫三元判斷式code review被打槍PTT推薦- Soft_Job 的推薦與評價
從C++ 的角度來說三元運算子有機會改變l-value/r-value 的性質, ... mmonkeyboyy12/15 05:27C++在很多地方都不能三元一送上去會被自動檢查打槍. ... <看更多>
三元運算子c++ 在 Re: [討論] 寫三元判斷式code review被打槍 - PTT 熱門文章Hito 的推薦與評價
從C++ 的角度來說三元運算子有機會改變l-value/r-value 的性質, ... 5 F 推mmonkeyboyy: C++在很多地方都不能三元一送上去會被自動檢查打槍 12/15 05: ... ... <看更多>
三元運算子c++ 在 Re: [討論] 寫三元判斷式code review被打槍- 看板Soft_Job 的推薦與評價
從 C++ 的角度來說
三元運算子有機會改變 l-value/r-value 的性質,進而破壞最佳化
舉個簡單例子 https://wandbox.org/permlink/8blhqHl417Zmrh9a
可以看到用三元運算子的時候,回傳區域變數竟然要 copy 而不是 move
雖然說 Java 沒有這些
不過你就知道看起來很簡潔的東西,也可能會有你沒意識到的副作用
因為有了這個認知
我個人現在不管什麼語言,都是盡量不用三元運算子,讓自己習慣用安全的寫法
※ 引述《a88241050 (再回頭已是百殘身)》之銘言:
: 小弟寫java的
: 以前常常寫三元判斷式
: 就比如說
: String a;
: if(con) {
: a= "aaa";
: } else {
: a="bbb";
: }
: 這樣就要佔掉六行
: 所以我通常都是寫
: String a= con ? "aaa" : "bbb";
: 從五行變成一行
: 在我看來簡潔又方便
: 但最近給一個資深前輩code review的時候
: 他說不要用三元判斷式
: 因為不好閱讀
: 他工作那麼久也從來不用三元判斷式的
: 而且java有很多套件都可以用來取代三元判斷式
: 所以用三元判斷式真的不好嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.228.69.15 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1671040535.A.A1A.html
試想你要寫一個 split string 的函數,應該直覺會宣告成這樣吧
std::vector<std::string> Split(const std::string& str);
那這個回傳的 vector 是不是必然是函數內的區域變數
為了活用語言特性當然會有不同的 style
但是以本串的 conditional operator vs if-else 來說:
1. 並非語言特有
2. 不影響效能
3. 不影響可讀性
純粹只是自己看得爽不爽的問題
覺得不好寫其實就是不習慣
曾經我也跟原 po 一樣,覺得一行能寫完的東西變成那麼多行,馬德爆幹醜
所以我說不分語言都會傾向使用 if-else 是為了讓自己習慣
寫多了就不覺得醜,才不會那麼排斥
也可以說是洗腦自己 XD
感謝補充 (^人^
※ 編輯: holydc (61.228.73.53 臺灣), 12/16/2022 00:49:38
... <看更多>