在类C ++中使用构造函数为char数组提供默认值

供应商

我正在写一个小程序,需要用户输入。输入是整数,表示学生人数,2个双作为成绩的数字以及学习领域,该领域必须是最大大小为20的字符数组。现在,在编写课程时,我不太确定如何输入为字符数组提供构造函数中的默认值。

这就是我用类和构造函数编写的内容。

class nemandi
{
public:
    nemandi(int num, double g1, double g2, char field[]);
    void birta();
    friend bool operator <(nemandi& nem1, nemandi& nem2);
private:
    int studentNumber;
    double grade1;
    double grade2;
    double medaltal();
    char fieldOfStudy[20];
};


nemandi::nemandi(int num, double g1, double g2, char field[])
{
    studentNumber = num;
    grade1 = g1;
    grade2 = g2;
    fieldOfStudy[20] = field[20];
}

这是行不通的,而且我还无法在线找到解决方案。谁能指出我正确的方向,如何在构造函数中为char数组赋予默认值?

提前致谢 !

编辑:更换fieldOfStudy[20] = field[20];memcpy(fieldOfStudy, field, sizeof(fieldOfStudy));的伎俩!感谢您的帮助:)

罗伯特
fieldOfStudy[20] = field[20];

您只是在从field到fieldOfStudy的位置20处分配了char。使用memcpy代替:

memcpy(fieldOfStudy, field, sizeof(fieldOfStudy));

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为类构造函数提供默认值的大多数pythonic方法

构造函数链接不使用类成员的默认值?

在类函数中使用类数据成员作为默认值,C ++

在基类数组中使用Subclass方法的默认值

如何在C ++中使用默认构造函数将char *设置为NULL?

具有类成员默认值的C ++ 11默认构造函数行为

如何在类构造函数中为Map类型变量分配默认值?

如何在类构造函数中设置字符串数组默认值

类构造函数中options对象的默认值

C#记录构造函数参数默认值为空IEnumerable

构造函数中使用lambda的C ++类

当父类在 C++ 中没有默认构造函数时,如何在继承的类中使用构造函数?

我们是否需要设置move构造函数=默认值?对于过去使用用户声明的析构函数buildet和C ++ 98/03的旧类?

为类成员函数的struct输入设置默认值

C ++构造函数中参数的默认值

用作函数参数时,将默认值设置为C数组

C ++中类成员的默认值

C中的OOP。类的默认值

模板类的默认值,C ++

在R中定义的类中使用默认值

Dart Flutter:在为类构造函数设置默认值时,可选参数的默认值必须恒定

多态C ++:基本指针字段未使用派生类构造函数提供的值

在C#构造函数初始值设定项中使用默认属性值

如何在C ++中使用通用引用参数为模板类编写构造函数

为实现一个接口的多个类设置默认值的模式或构造

具有许多具有默认值的字段的“不可变类”的Java构造函数?

具有Java中构造函数默认值的超类覆盖子类

具有默认值的Kotlin数据类上的Spring构造函数注释

泛型类的构造函数中可选字段的默认值