无法弄清楚崩溃

时间:2018-03-31 02:42:38

标签: c++

首先我想说这是一次学校运动。我试图学习的不仅仅是复制/粘贴答案。正确方向的提示会很棒。如果这个问题不符合本网站的任何规则,我很抱歉。

所以我的问题是我创建了一组卡片,它列出了一个数组中的每张卡片(一个int)。第一个工作正常,但在第二张卡上我的程序崩溃了。

我留下了一些代码。我并不担心所有的功能。我的程序在构造函数区域崩溃。它编译很好但在执行中崩溃。那里有一个非常简单的错误。谢谢!

CardSet.cpp

<div *ngIf="bioData">
      <p>{{bioData.name}}</p>
      <p>{{bioData.age}}</p>
  </div>

的main.cpp

#include <iostream>
#include "CardSet.h"
using namespace std;

CardSet::CardSet()
{
    nCards = 0;
}

CardSet::CardSet(int Input_Card_Amount)
{
    nCards = Input_Card_Amount;
    int quot = (int)nCards / 52;
    int rem = nCards % 52;
    int Sets_Of_Cards = 0;
    int Card_Index = 0;
    while(Sets_Of_Cards != quot)
    {
        for(int Card_Counter = 0; Card_Counter < 52; Card_Counter++)
        {
            Card[Card_Index] = Card_Counter;
            Card_Index++;
        }
        Sets_Of_Cards++;
    }
    for(int Card_Counter = 0; Card_Counter < rem; Card_Counter++)
    {
        Card[Card_Index] = Card_Counter;
        Card_Index++;
    }
}

CardSet::~CardSet()
{
    delete[] Card;
}

CardSet.h

int main()
{
    CardSet CardSet1(12), CardSet2(12), CardSet3, CardSet4, CardSet5, CardSet6;

    cout << "BEGINNING OF CARDSET TESTS . . .  "<< endl << endl;

    cout << "Test 1: Constructors:" << endl;
    cout << "CardSet1 Size: " << CardSet1.Size() << endl;
    cout << "CardSet3 Size: " << CardSet3.Size() << endl;
    cout << "Printout of CardSet1:" << endl;
    CardSet1.Print();
    cout << "Printout of CardSet2:" << endl;
    CardSet2.Print();
    cout << endl;
    enter code here
    cout << ". . . END OF TESTS"<< endl;
    return 0;
}

1 个答案:

答案 0 :(得分:0)

您需要分配卡片。对不起,我正在通过手机接听,所以有点棘手,但基本上你需要去

Card = new int[52]

在尝试访问卡阵列之前。即,在你的while循环之前。

希望有所帮助

相关问题