在类C ++中访问数组

时间:2013-09-23 12:28:02

标签: c++ arrays class

所以我忙于我的任务,我写了一段完美的代码,但是还没准备好。我能弄清楚的是如何在类中使用数组。或者如何获取和设置数组中的项目,以及在何处放置循环以提示用户输入标记。

所以我想提示用户输入分配编号和3个分配的标记,这些分配存储在数组中,然后输出分配和标记。我知道这听起来很愚蠢,但它会帮助我理解课堂中的数组。

我的课程在外部文件中

    #ifndef ASSIGNMENTS_H_INCLUDED
#define ASSIGNMENTS_H_INCLUDED
#include<iostream>
using namespace std;

    class assignments
    {
        public:
            assignments(); // default constructor

            void setAssNum(int k); // mutator
            int getAssNum(); // accessor
            void setAssMark(double m); // mutator
            double getAssMark(); // accessor
        private:
            int AssNum;
            double AssMark;
    };



    assignments::assignments()
    {
        AssNum = 0;
        AssMark = 0.0;
    }

    void assignments::setAssNum(int k)
    {
        AssNum = k;
    }
    void assignments::setAssMark(double m)
    {
        AssMark = m;
    }
    int assignments::getAssNum()
    {
        return AssNum;
    }
        double assignments::getAssMark()
    {
        return AssMark;
    }

#endif // ASSIGNMENTS_H_INCLUDED

这是主要的

int main()
{
    int AssNum;
    double AssMark;
assignments c;

cout <<"Enter Assignment Number: ";
cin >> AssNum;
cout <<"Enter Assignment Mark in Percentage: ";
cin >> AssMark;

        c.setAssNum(AssNum);
        c.setAssMark(AssMark);

        cout <<"The Mark for assignment "<< c.getAssNum() <<" is: " << c.getAssMark()<<"%";


    }

我不希望任何人重写代码,只是想澄清一下,如何在这种情况下使用数组。

谢谢

1 个答案:

答案 0 :(得分:0)

首先,您创建一个包含一项作业的班级,就像您现在在作业类中使用它一样,只需将其称为assignment而不是

然后为作业创建一个容器,其中包含带有作业的矢量或数组。 e.g。

class assignments
{
public:
  assignments() : m_assignments( new assignment[100] )
  {}
  ~assignments() { delete [] m_assignments; }
private:
  assignment* m_assignments;
};

最好是使用std::vector,请参阅#include <vector>

然后你需要添加公共方法来访问数组,如

assignment getAssignment(int i);
void setAssignment(int i, const assignment& ass); 
例如