C++ 访问迭代器的许多元素

C++ 访问迭代器的许多元素,c++,C++,这可能会很简单,但解决方案目前还没有找到。下面是该程序的简要概述 程序显示并允许用户洗牌,然后在用户输入时以洗牌形式再次显示。目前,我的输出是一行,直到它迫使自己生成一个新行,以避免超出窗口大小 我需要做的是创建4行13张卡,伪代码中的方法是: if(deck[12]) cout << endl; if(甲板[12]) 单独的柜台怎么样 int n = 0; for (vector<const string*>::const_iterator it=deck.be

这可能会很简单,但解决方案目前还没有找到。下面是该程序的简要概述

程序显示并允许用户洗牌,然后在用户输入时以洗牌形式再次显示。目前,我的输出是一行,直到它迫使自己生成一个新行,以避免超出窗口大小

我需要做的是创建4行13张卡,伪代码中的方法是:

if(deck[12])
   cout << endl;
if(甲板[12])

单独的柜台怎么样

int n = 0;
for (vector<const string*>::const_iterator it=deck.begin(); it!= deck.end(); ++it)
{
    cout << (*it)->c_str() << ' ';
    if (++n == 13)
    {
        n = 0;
        cout << '\n';
    }
}
int n=0;
for(vector::const_迭代器it=deck.begin();it!=deck.end();++it)
{

可以单独设置一个计数器吗

int n = 0;
for (vector<const string*>::const_iterator it=deck.begin(); it!= deck.end(); ++it)
{
    cout << (*it)->c_str() << ' ';
    if (++n == 13)
    {
        n = 0;
        cout << '\n';
    }
}
int n=0;
for(vector::const_迭代器it=deck.begin();it!=deck.end();++it)
{

你可以这样做吗-

 if ((it - deck.begin()) % 13 == 0)
 {
     std::cout << "\n";
 }
if((it-deck.begin())%13==0)
{

你可以这样做-

 if ((it - deck.begin()) % 13 == 0)
 {
     std::cout << "\n";
 }
if((it-deck.begin())%13==0)
{

std::cout你有52张卡片,你想把它们分成4行,每行13张。这很简单:

对于(整数行=0;i<4;++i){ 用于(int卡=0;卡<13;++卡)
std::cout你有52张卡片,你想把它们分成4行,每行13张。这很简单:

对于(整数行=0;i<4;++i){ 用于(int卡=0;卡<13;++卡)
std::那么,你想在每13张卡片上有一个换行符吗?也许使用一个计数器?“访问迭代器的多个元素”是这个问题的一个非常超现实的标题。那么,你想在每13张卡片上有一个换行符吗?也许使用一个计数器?“访问迭代器的多个元素”对于这个问题来说,这是一个非常超现实的标题。虽然这个方法确实起到了作用,但我没有想到第一张牌在技术上是0,因此在第一张牌上结束了这一行。然而,这确实实现了我想弄明白的,所以感谢你告诉我怎么做。这只是一个替代方法使用计数器的方法。jrok的解决方案也是干净的。虽然这种方法确实做到了这一点,但我没有想到第一张卡在技术上是0,因此在第一张卡上结束。然而,这确实实现了我想要实现的,所以感谢您向我展示了如何做到这一点。这只是使用计数器的另一种方法。jrok的解决方案也是干净的。