Leetcode 1116. ゼロと奇数を印刷(acなし)


コンソールは大丈夫です.なぜacがないのか分かりません.
#include 
#include 
#include 
#include 
#include 
using namespace std;
class ZeroEvenOdd {
private:
	int n;
	std::mutex mutex_t;
	std::condition_variable cond;
	bool is0 = true;
	bool is1 = true;
public:
	ZeroEvenOdd(int n) {
		this->n = n;
	}

	// printNumber(x) outputs "x", where x is an integer.
	void zero(function printNumber) {
		for (int i = 0; i < n; i++)
		{
			std::unique_lock<:mutex> lk(mutex_t);
			cond.wait(lk, [this]() {return is0; });
			printNumber(0);
			is0 = false;
			cond.notify_all();
		}
	}

	void even(function printNumber) {
		if (n == 0)return;
		for (int i = 1; i <= n; i++)
		{
			std::unique_lock<:mutex> lk(mutex_t);
			cond.wait(lk, [this]() {return !is0&&is1; });
			if (i % 2) 
			{
				printNumber(i);
				is0 = true;
				is1 = false;
			}
			
			cond.notify_all();
		}
	}

	void odd(function printNumber) {
		if (n == 0)return;
		for (int i = 1; i <= n; i++)
		{
			std::unique_lock<:mutex> lk(mutex_t);
			cond.wait(lk, [this]() {return !is0 && !is1; });
			if (i % 2 == 0)
			{
				printNumber(i);
				is0 = true;
				is1 = true;
			}
			
			cond.notify_all();
		}

	}
};
int main() 
{
	std::function f1= [](int x) {printf("%d", x); };
	ZeroEvenOdd obj(5);
	thread t1(std::bind(&ZeroEvenOdd::zero,&obj,f1));
	thread t2(std::bind(&ZeroEvenOdd::even, &obj,f1));
	thread t3(std::bind(&ZeroEvenOdd::odd, &obj,f1));
	t1.join();
	t2.join();
	t3.join();
	return 0;
}

このようなクラスがあるとします.
class ZeroEvenOdd {   public ZeroEvenOdd(int n) { ... }//コンストラクション関数public void zero(printNumber){...}//0 public void even(printNumber){...}のみ印刷//偶数public void odd(printNumber){...}のみ印刷//奇数のみ印刷}同じZeroEvenOddクラスインスタンスが3つの異なるスレッドに渡されます.
スレッドAはゼロ()を呼び出し、0のみ出力します.スレッドBはeven()を呼び出し、偶数のみを出力します.スレッドCはodd()を呼び出し、奇数のみを出力します.各スレッドにはprintNumberメソッドがあり、整数を出力します.与えられたコードを修正して整数シーケンス0102030400506を出力してください...シーケンスの長さは2 nでなければなりません.
 
例1:
入力:n=2出力:0102の説明:3つのスレッドが非同期で実行され、そのうちの1つがzero()を呼び出し、もう1つのスレッドがeven()を呼び出し、最後のスレッドがodd()を呼び出す.正しい出力は「0102」です.例2:
入力:n=5出力:“01020304005”
ソース:力ボタン(LeetCode)リンク:https://leetcode-cn.com/problems/print-zero-even-odd著作権はインターネットの所有に帰属する.商業転載は公式の授権に連絡してください.非商業転載は出典を明記してください.