template <class T , unsigned int pos , unsigned int len = 1>
struct bit_mask{
static constexpr T mask = ~( ~static_cast<T>(0) << (len) ) << pos;
// その他の処理
}
特定のビットをマスクする処理がしたくて↑のようなテンプレートクラスを作成したのだけど
warning: left operand of shift expression '(-1 << 1)' is negative [-fpermissive]
の警告が出てしまう
この警告が符号あり整数型を左シフトしてはいけないというのは分かるので、Tが必ず符号なし整数型であることを明示したいのだけどどうしたらいいだろう?
特殊化すると符号なしのバイト幅毎に処理を描かないといけなくなるし、もっと簡便なほうほうがあったりするのでしょうか?
探検
C++相談室 part163
■ このスレッドは過去ログ倉庫に格納されています
400デフォルトの名無しさん (ワッチョイ 835f-D0vN)
2023/02/12(日) 14:56:19.98ID:wUCNDItd0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【前橋市】小川晶前市長とラブホテルで打ち合わせをした54歳男性職員を停職処分 今月末で依願退職するという [シャチ★]
- 【おこめ券】鈴木農相 米価維持の意図「一切ない」★2 [ぐれ★]
- 【埼玉】「無免許で高速道路で事故」トラックの追突事故で10代男性死亡 無免許過失運転致死の疑いでトルコ国籍の男(22)逮捕 戸田市 [ぐれ★]
- 【日銀総裁】賃金に上昇圧力 人手不足で労働市場逼迫 [蚤の市★]
- レーダー照射問題で日本のホットライン呼びかけに中国応じず…2023年3月に開設も機能せず [♪♪♪★]
- 広島・廿日市、おこめ券配布せず 全市民に3000円現金給付へ [どどん★]
- 俺氏の借金の金額wwwwwwwwwwwwwwwwwwwwwwwwwww
- 【速報】1ポンド210円で日英GDP逆転(残り1.5円)...世界6位の経済規模に転落 [237216734]
- ソープ待合室俺、緊張中WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
- パスタに高い安いの差ある?
- 朝日新聞記者「中国軍のレーダー照射はこめかみに銃を突きつけられたのと同じ。僕なら反撃して撃墜してる」高市 [931948549]
- 年取るとオナニーしなくなるってマジ…?
