まだ直すと隠すの区別ついてないアホのためによくある例書いとくね
std::vector<Foo> foos = /* なんか入ってる */
for(int i = 0; i < GetLegacyLength(); ++i){
Hoge* item = GetLegacyItem(i);
if (i < foos.size()) // WARNING: signedとunsigned比較してんぞ
{ hoge(foos[i], item); }
else
{ fuga(item); }
}
アホの隠し方(1):脳死でif文のiかfoos.size()をキャストして隠蔽
アホの隠し方(2):脳死でiの型をsize_tに変更、そしてi < GetLegacyLength()でまた同じ警告が出て激怒「コンパイラの警告なんて無意味だ!」
正しい直し方:
なぜ長さを返すのに戻り値型がintなのか、GetLegacyLength()のマニュアルを見て仕様を確認する。
するとある条件でエラー値として-1を返すことがあると判明したので、
forループの前にGetLegacyLength()を取得するようにして、負の場合のエラー処理を追加した。
/*略*/
int len = GetLegacyLength();
if (len < 0) { /* エラー処理 */ }
else {
for(size_t i = 0; i < static_cast<size_t>(len); ++i) { //lenは0以上と確認済みなので安全にキャストできる
/*略*/
C++相談室 part163
■ このスレッドは過去ログ倉庫に格納されています
558デフォルトの名無しさん (ワッチョイ ed7c-aJXl)
2023/02/18(土) 09:42:41.72ID:U7F6huSe0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本の立場説明へ…外務省局長が北京到着 “台湾有事”首相答弁に中国反発 ★4 [煮卵★]
- 橋下徹氏「この喧嘩は日本の完敗」 台湾有事答弁めぐる外務省局長訪中で指摘「中国に怒られてご説明に伺った日本と見られる」 [muffin★]
- 【日本大使館】中国在留邦人は安全確保を [ぐれ★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 習政権、高市首相への態度硬化 台湾有事発言で連日非難 中国 ★10 [ぐれ★]
- 外務省幹部が18日に中国側と協議へ ツアー停止や映画公開延期も 在中国の日本大使館は現地滞在の日本人に注意喚起 [787212328]
- 【高市速報】ユーロ円180円突破。史上初 [931948549]
- 高市コイン、155円突破wwwwwwwwww [246620176]
- 杉浦綾乃板って改名したほうがいいよな
- 高市早苗の中国問題、「オーバーツーリズムが解消されてウザい中国人が消えるから日本の勝ち」という風潮になってしまう [562983582]
- おじゃる丸をまったり待機するスレ🏡
