无法弄清楚崩溃

杰米

首先让我说这是一个学校练习。我正在努力学习,而不仅仅是复制/粘贴答案。正确方向的提示会很棒。如果这个问题不符合本网站的任何规则,我很抱歉。

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

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

卡片集.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;
}

主程序

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;
}

卡片集.h

#ifndef CARDSET_H
#define CARDSET_H

class CardSet
{
    public:
        CardSet();
        CardSet(int);
        ~CardSet();
        int Size() const;
        bool IsEmpty() const;
        void Shuffle();
        int Deal();
        void Deal(int,CardSet&,CardSet&);
        void Deal(int,CardSet&,CardSet&,CardSet&,CardSet&);
        void AddCard(int);
        void MergeShuffle(CardSet&);
        void Print() const;
    private:
        int* Card;
        int nCards;
        void PrintCard(int c) const;
};

#endif
用户3814568

您需要分配卡。抱歉,我正在用手机接听电话,所以有点棘手,但基本上你得走了

Card = new int[52]

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

希望有帮助

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法弄清楚用法

来自分类Dev

我无法弄清楚这些错误

来自分类Dev

PL / SQl错误。无法弄清楚

来自分类Dev

卷毛的问题无法弄清楚

来自分类Dev

无法弄清楚如何<s:select>

来自分类Dev

我无法弄清楚这些错误

来自分类Dev

无法弄清楚PHP的JSON格式

来自分类Dev

无法弄清楚JOIN命令

来自分类Dev

背景不动,无法弄清楚

来自分类Dev

无法弄清楚如何收税

来自分类Dev

SQL Join无法弄清楚

来自分类Dev

无法弄清楚什么是文件

来自分类Dev

无法弄清楚如何捕获InputMismatchException

来自分类Dev

无法弄清楚如何打印toString

来自分类Dev

无法弄清楚多个IF功能

来自分类Dev

.replace不是函数-无法弄清楚

来自分类Dev

无法弄清楚PHP插入

来自分类Dev

我无法弄清楚这个查询

来自分类Dev

iOS限制-无法弄清楚如何

来自分类Dev

网站已关闭......无法弄清楚:/

来自分类Dev

python - 编码,打印无法弄清楚

来自分类Dev

无法弄清楚缺少什么库

来自分类Dev

无法弄清楚这里的逻辑?

来自分类Dev

无法弄清楚为什么引导程序列不会崩溃

来自分类Dev

我的应用程序在android studio中崩溃了,在查看日志时我无法弄清楚出了什么问题

来自分类Dev

无法弄清楚为什么验证无法正常工作

来自分类Dev

无法弄清楚为什么onClick无法更新状态

来自分类Dev

无法弄清楚为什么SQL语句无法唤醒

来自分类Dev

Qt5 Cmake无法弄清楚