[解決済み】「warning: not all control paths return a value」ってどういう意味?(C++)
2022-02-09 06:18:50
質問
私が受け取った正確な警告は
warning C4715: 'hand::show' : not all control paths return a value
で、hand::showは
std::ostream& hand::show(std::ostream& os) const
{
if(side == left)
{
return os<<display[0]<<display[1]<<display[2]<<display[3]<<display[4];
}
if(side == right)
{
return os<<display[4]<<display[3]<<display[2]<<display[1]<<display[0];
}
}
ここで、side は orientation 型の変数です。
orientation{
left = -1,
right = 1
};
この警告の意味と、警告を消すための最適な解決策を教えてください。
解決方法は?
コンパイラーは賢くないので、この2つのオプションのうち
side
は
left
と
right
ということで、どちらのreturn文も実行されない可能性があると判断しています。このとき
side
はどちらも
left
また
right
この関数には、どの値を返すかは書かれていません。
関連
-
[解決済み】Visual Studio 2015で「非標準の構文; '&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み] クラスにデフォルトコンストラクタが存在しない。
-
[解決済み】Visual C++で "Debug Assertion failed "の原因となる行を見つける。
-
[解決済み】Enterキーを押して続行する
-
[解決済み] explicit キーワードの意味は?
-
[解決済み] C++11では、標準化されたメモリモデルが導入されました。その意味するところは?そして、C++プログラミングにどのような影響を与えるのでしょうか?
-
[解決済み] C++11のT&&(ダブルアンパサンド)の意味とは?
-
[解決済み] ポインタの「デリファレンス」とはどういう意味ですか?
-
[解決済み] int argc, char *argv[] とはどういう意味ですか?
-
[解決済み] Intel CPU の _mm_popcnt_u64 で、32 ビットのループカウンターを 64 ビットに置き換えると、パフォーマンスが著しく低下します。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】C++ クラスヘッダが含まれているときに「不明な型」があるのはなぜですか?重複
-
[解決済み】LLVMで暗黙のうちに削除されたコピーコンストラクタの呼び出し
-
[解決済み】Visual Studio 2015で「非標準の構文。'&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み] エラーが発生する。ISO C++は型を持たない宣言を禁じています。
-
[解決済み】Cygwin Make bash コマンドが見つかりません。
-
[解決済み】fpermissiveフラグは何をするのですか?
-
[解決済み] 非静的データメンバの無効な使用
-
[解決済み】エラー:free(): 次のサイズが無効です(fast)。
-
[解決済み】CMakeエラー at CMakeLists.txt:30 (project)。CMAKE_C_COMPILER が見つかりませんでした。
-
[解決済み] 解決済み] `pthread_create' への未定義の参照 [重複] [重複