vector
C では、 std::vector 問題 提供された例では、関数 callIfToggled を使用してブール値と構造体のメソッドを呼び出します。 std::vector 理由 bool ベクトル特殊化内では、vector 解決策 例 (Char のベクトル): 以上が`std::vector::reference` が `bool&` を返さないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。#include <vector>
struct A
{
void foo() {}
};
template<typename T>
void callIfToggled(char v1, char &v2, T &t)
{
if (v1 != v2)
{
v2 = v1;
t.foo();
}
}
int main()
{
std::vector<char> v = { false, true, false };
const char f = false;
A a;
callIfToggled(f, v[0], a);
callIfToggled(f, v[1], a);
callIfToggled(f, v[2], a);
}