実現したいこと
VisualStudioのC++でConsoleApplicationを書いています。
ウインドウの[×]ボタンを押したときにも、通常の終了前の時と同じ処理をしたいです。
下記のソースではビープ音を「ミレド」とならしたいです。
発生している問題・分からないこと
C++超初心者の私には、そもそもC++でそのようなことが実現できるのかさえ分かりません。
該当のソースコード
C++
1#include <iostream> 2#include <conio.h> 3#include <stdio.h> 4#include <windows.h> 5 6using namespace std; 7 8int main() 9{ 10 __try 11 { 12 std::cout << "Hello World!\n"; 13 Beep(440, 200); // ド 14 Beep(494, 200); // レ 15 Beep(554, 200); // ミ 16 printf("[Enter]キーを押すと終了します。"); 17 while (true) 18 { 19 int key = 0; 20 if (GetAsyncKeyState(13) & 0x0001) { 21 break; 22 } 23 } 24 } 25 __finally 26 { 27 Beep(554, 200); // ミ 28 Beep(494, 200); // レ 29 Beep(440, 200); // ド 30 } 31}
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
キーワードがよくないのか、C++でそのような記事が見つけられませんでした。
__finallyではダメなことは分かりました。
補足
Microsoft Visual Studio Community 2022
Version 17.9.6
VisualStudio.17.Release/17.9.6+34728.123
どのようなキーワードで検索されましたか?
「C++ ウインドウ 閉じる」とかで検索しても情報は得られました。
回答1件
あなたの回答
tips
プレビュー