midiOutGetNumDevs函数似乎有Bug

HoWe Yu 86 信誉分
2025-04-07T03:09:22.6333333+00:00

为了测试,我写了如下代码:

#include <iostream>
#include <string>

using namespace std;

#include <windows.h>

#pragma comment(lib, "winmm.lib")

int main()
{
	string buffer;
	while (true)
	{
		cout << "输入命令:";
		getline(cin, buffer);
		// 退出命令
		if (buffer == "exit") break;
		// 获取输出设备数量
		if (buffer == "count")
		{
			int numDevices = midiOutGetNumDevs();
			cout << "Midi 输出设备数量:" << numDevices << endl;
		}
	}

	return 0;
}


然后使用LoopMIDI添加与删除MIDI设备LoopMIDI

添加设备时,设备数量会增加,但是删除时,设备数量不会减少:

未标题-2

C++
C++
一种通用的高级编程语言,作为 C 编程语言的扩展而创建,除了用于低级别内存操作的功能外,还具有面向对象、泛型和功能性等特点。
177 个问题
0 个注释 无注释
{count} 票

你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。