bool値をインクリメントする……?

@climpetさんや@Cryoliteさんがつぶやいているように、C++の規格ではbool値をインクリメントするとtrueになる(false→true, true→true)と決まっています(ただし非推奨)。そしてデクリメントは定義されていません。反響が大きかったので、つぎゃりました。
13
前へ 1 2 ・・ 5 次へ
こんどー( •́ㅂ•̀) @condoh3

boolも内部的にはintじゃなかったっけ?0かそうでないかを評価される。

2012-08-16 23:16:53
元絶対定時退社マン @kazh98

false := 0 (in C) RT @kester44: false のインクリメントがtrue なのがわからん. RT @kazh98: false のインクリメントがtrue なのは分かる.けどtrue のインクリメントはどう定義するのが幸せなんだろう.

2012-08-16 23:17:08
くりんぺっと @climpet

ISO/IEC 14882:2003より。 "The operand of prefix ++ is modified by adding 1, or set to true if it is bool"

2012-08-16 23:17:11
Akso de la Malbono @Cryolite

[expr.pre.incr]/1 "The operand of prefix ++ is modified by adding 1, or set to true if it is bool (this use is deprecated)."

2012-08-16 23:17:21
くりんぺっと @climpet

--演算子は"The operand shall not be of type bool."

2012-08-16 23:18:07
いぐにすさん @ignis_fatuus

deprecatedというかなぜ許してたし

2012-08-16 23:18:40
ふじた @kester44

ああ,C++の話か..Complexに見えるw RT @kazh98: false := 0 (in C) RT @kester44: false のインクリメントがtrue なのがわからん. RT @kazh98: false のインクリメントがtrue なのは分かる.

2012-08-16 23:19:17
くいなちゃん @b2

bool型をいくらインクリメントしても、再び false になることはない ということです?

2012-08-16 23:19:19
suibaka @suibaka

boolのbyte数って処理系依存なのね…

2012-08-16 23:19:28
くりんぺっと @climpet

@shora_kujira16 みたいですね。C++の規格でもそのようになっていました。

2012-08-16 23:19:32
るいーにΔ譜久嶺るい/C103(日)東S16ab @1ouis

bool型をインクリメントするという発想はなかった

2012-08-16 23:19:47
元絶対定時退社マン @kazh98

!!(b) ∈ [0,1] だからbが0 のときに1 で1 のときに0 的な……NOT か.(俺々仕様だけど

2012-08-16 23:20:03
文化的生活 @tcptr

boolがインクリメントできる...? Dはnot allowedなエラーが飛ぶ

2012-08-16 23:20:15
元絶対定時退社マン @kazh98

じゃない,false のときにtrue でtrue のときにfalse か.

2012-08-16 23:20:25
Egtra (ysk-noh) @egtra

C++でbool型のオブジェクトをインクリメントするコードに出くわしたら、間違いなくウンコードに投稿する。

2012-08-16 23:20:27
suibaka @suibaka

インクリメントさせなければいいのでは

2012-08-16 23:20:38
いぐにすさん @ignis_fatuus

@kuina_tesso なぜそうなってるかは知らないけどhttp://t.co/bQWYkGOq みたいな意味が絡んでると予想

2012-08-16 23:20:43
(´ω`) @nakaryi

trueとfalseに対してインクリメントというオペレーションを考えるってなんだか不思議な話だと思う。

2012-08-16 23:20:46
suibaka @suibaka

許可してるあたりがアレ

2012-08-16 23:21:08
六角みく @miku_hx

bool型を整数型のひとつとみた場合、0 のみを false とする C 系列の言語では、false からインクリメントして true になったら、そのあといつまで経っても false には戻らないのでは

2012-08-16 23:21:10
元絶対定時退社マン @kazh98

もう面倒だからint 型使おうよ(

2012-08-16 23:21:23
やくも @kyuriage

trueもfalseもインクリメントするとtrueになるってこと?

2012-08-16 23:21:24
前へ 1 2 ・・ 5 次へ