如何创建一个类变量数组
How to make a class variable array
如何创建一个grade class变量数组?我不明白如何初始化和在main()
中写什么。从这里,有没有办法得到一个常数?我需要一个for循环来读取和输出数组吗?由于
class First
{
public:
int getId();
void setId(int);
int getExam();
void setExam(int);
void print();
First(int studentId, int exam);
private:
int id;
int grade;
};
int main()
{
int studentId = 0;
int exam = 0;
First Student(studentId, exam);
cout << "Enter student id" << endl;
cin >> studentId;
Student.setId(studentId);
cout << "enter grade" << endl;
cin >> exam;
Student.setExam(exam);
Student.print();
return 0;
}
如果您在编译时知道数组的大小,则可以这样创建数组:
First student_list[size];
虽然使用std::array<T, N>
这样的编译时类更理想:
#include <array>
std::array<int, size> student_list;
如果你不知道编译时的大小,或者你的编译器不支持std::array
,使用std::vector<T>
:
#include <vector>
std::vector<int> student_list;
此外,参数化构造函数(First(int, int)
)覆盖了编译器通常提供的默认构造函数和复制构造函数。默认构造函数如下所示:
First() { }
否则,您可以在c++ 11中使用default
说明符:
First() = default;
但是,通过为专门化构造函数使用默认形参,它可以在给定0个实参时充当默认构造函数。下面是一个很好的选择:
First(int studentid = 0, int exam = 0)
{ }
最后,是的,您需要某种循环来连续打印每个元素的等级
相关文章:
- 为什么我不能在一个类的不同行中声明和定义成员变量?
- 为什么从另一个构造函数内部调用C++构造函数不修改类变量?
- 我有一个类,它创建了另一个类的实例.如何将变量通过第一个类传递到第二个类的实例化中?
- 有没有办法在同名类 (c++) 中为对象分配一个指针变量
- 包括一个类来定义全局变量参数 c++ :(
- (C++) 从另一个类访问变量时值无效
- 将内置类型变量传递给只有一个类类型参数的"+"运算符函数时自动类型转换的构造函数
- 在C++中,我想通过使用来自变量(例如字符串)的typename信息,从模板中定义一个类对象
- memcpy() 在一个类中被调用以复制到另一个类变量中后会引发异常
- 访问具有另一个类中的原子私有变量的类的成员
- 使用 c++ / QT 创建器从另一个类中设置和获取单例变量
- 如何将私有整数从A类传递到C 类B类的另一个INT变量
- 为什么在对象引用恒定时允许更改为另一个类的指针的成员变量
- 在所有CPP文件中使用一个Globe变量.如果CPP文件的一个类更改该值,我想从另一个类CPP文件访问它
- 如何在另一个类中使用变量的值
- 如何创建一个声明来自另一个类的变量的类
- 如何在Arduino中创建另一个类库的实例变量
- 通过c++中的functon访问另一个类变量
- 如何创建一个类变量数组
- 使用给定框架调用/引用另一个类C++变量或函数