<>在C++中,你可以使用一个向量{^ a},比如</p>
<pre><code>std::vector<std::vector<int>> matrix;
</code></pre>
<p>你不需要为矩阵值使用单独的变量,当你有矩阵的时候你为什么要使用?在</p>
<p>我不明白为什么你需要得到所有你计算<code>true</code>或<code>false</code>的值。相反,只需将条件计算结果为<code>true</code>的坐标直接放入<code>std::vector</code>:</p>
^{pr2}$
<p>现在有了一个向量,其中所有矩阵坐标的条件是<code>true</code>。在</p>
<hr/>
<p>如果您真的想同时拥有<code>true</code>和<code>false</code>值,可以使用<a href="http://en.cppreference.com/w/cpp/container/unordered_map" rel="nofollow">^{<cd9>}</a>和一个<a href="http://en.cppreference.com/w/cpp/utility/pair" rel="nofollow">^{<cd10>}</a>的<a href="http://en.cppreference.com/w/cpp/utility/pair" rel="nofollow">^{<cd10>}</a>作为键,<code>bool</code>作为值:</p>
<pre><code>// Create a type alias, as this type will be used multiple times
typedef std::map<std::pair<int, int>, bool> bool_map_type;
bool_map_type bool_map;
</code></pre>
<p>将矩阵中的所有值插入到该映射中,矩阵的坐标为键,映射值为<code>true</code>或{<cd3>},具体取决于您的条件。在</p>
<p>要获取<code>bool_map</code>中所有条目的列表,可以删除带有<a href="http://en.cppreference.com/w/cpp/algorithm/remove" rel="nofollow">^{<cd16>}</a>的<code>false</code>条目:</p>
<pre><code>std::remove_if(bool_map.begin(), bool_map.end(),
[](const bool_map_type::value_type& value) {
return value.second == false;
};
</code></pre>
<p>{现在只有一个包含cd2}值的条目。在这个地图上迭代以得到矩阵的坐标</p>
<hr/>
<p>当然,我可能完全误解了你的问题,在这种情况下,你当然可以无视这个答案。:)</p>