「VC PlusPlus:C28251 'WinMain' に対する整合性のない注釈: このインスタンスには 注釈なし が含まれます。」の版間の差分
(→概要) |
編集の要約なし |
||
(同じ利用者による、間の1版が非表示) | |||
1行目: | 1行目: | ||
[[VC_PlusPlus#記事|VC Cpp記事]]に戻る。 | |||
== '''概要''' == | == '''概要''' == | ||
WinMain関数は4つの引数をとりますが、main関数なら引数を受け取るかどうかさえもプログラマの自由なわけです。ですが、WinMain関数の引数は受け取らないと自分自身にプログラムに割り当てられたプログラム実体番号さえ受け取れず、実体つまりインスタンスを作ることはできません。その引数に注釈というのがないぞっていう警告です。 | WinMain関数は4つの引数をとりますが、main関数なら引数を受け取るかどうかさえもプログラマの自由なわけです。ですが、WinMain関数の引数は受け取らないと自分自身にプログラムに割り当てられたプログラム実体番号さえ受け取れず、実体つまりインスタンスを作ることはできません。その引数に注釈というのがないぞっていう警告です。 | ||
8行目: | 9行目: | ||
(<span style="color:green;">_In_</span> HINSTANCE hCurInst, _In_opt_ HINSTANCE hPrevInst, _In_ LPSTR lpsCmdLine, _In_ int nCmdShow) | (<span style="color:green;font-weight:bold;">_In_</span> HINSTANCE hCurInst, <span style="color:green;font-weight:bold;">_In_opt_</span> HINSTANCE hPrevInst, <span style="color:green;font-weight:bold;">_In_</span> LPSTR lpsCmdLine, <span style="color:green;font-weight:bold;">_In_</span> int nCmdShow) | ||
15行目: | 16行目: | ||
これはSAL=Source Annotation Language ソースコード注釈言語というもので、[https://learn.microsoft.com/ja-jp/cpp/code-quality/understanding-sal?view=msvc-170 https://learn.microsoft.com/ja-jp/cpp/code-quality/understanding-sal?view=msvc-170]に長々と意味について記述されています。警告されるWinMain関数だけでも注釈をつけときましょうか。ソースコードの安全性を確かめる簡単な方法でより高度な分析を受けることができます。面倒な警告がいっぱい出ますが、あまり気にしていなかった処理の流れがあることに気づかされます。 | これはSAL=Source Annotation Language ソースコード注釈言語というもので、[https://learn.microsoft.com/ja-jp/cpp/code-quality/understanding-sal?view=msvc-170 https://learn.microsoft.com/ja-jp/cpp/code-quality/understanding-sal?view=msvc-170]に長々と意味について記述されています。警告されるWinMain関数だけでも注釈をつけときましょうか。ソースコードの安全性を確かめる簡単な方法でより高度な分析を受けることができます。面倒な警告がいっぱい出ますが、あまり気にしていなかった処理の流れがあることに気づかされます。 | ||
[[VC_PlusPlus#記事|VC Cpp記事]]に戻る。 |
2023年10月15日 (日) 22:47時点における最新版
VC Cpp記事に戻る。
概要
WinMain関数は4つの引数をとりますが、main関数なら引数を受け取るかどうかさえもプログラマの自由なわけです。ですが、WinMain関数の引数は受け取らないと自分自身にプログラムに割り当てられたプログラム実体番号さえ受け取れず、実体つまりインスタンスを作ることはできません。その引数に注釈というのがないぞっていう警告です。
(HINSTANCE hCurInst, HINSTANCE hPrevInst, LPSTR lpsCmdLine, int nCmdShow)のような
定義でも十分に実行可能なわけですが、今の流儀としては
(_In_ HINSTANCE hCurInst, _In_opt_ HINSTANCE hPrevInst, _In_ LPSTR lpsCmdLine, _In_ int nCmdShow)
と記述することになっています。
これはSAL=Source Annotation Language ソースコード注釈言語というもので、https://learn.microsoft.com/ja-jp/cpp/code-quality/understanding-sal?view=msvc-170に長々と意味について記述されています。警告されるWinMain関数だけでも注釈をつけときましょうか。ソースコードの安全性を確かめる簡単な方法でより高度な分析を受けることができます。面倒な警告がいっぱい出ますが、あまり気にしていなかった処理の流れがあることに気づかされます。
VC Cpp記事に戻る。