Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ “;class::数据成员是私有的”;错误_C++ - Fatal编程技术网

C++ “;class::数据成员是私有的”;错误

C++ “;class::数据成员是私有的”;错误,c++,C++,谁可以帮助检查我的“class::data member is private”错误 #include <iostream> using namespace std; class Marks { private: char * name; char * grade; float gpa; public: char* set_name(char * n)

谁可以帮助检查我的“class::data member is private”错误

#include <iostream>

using namespace std;

class Marks
{
    private:
            char * name;
            char * grade;
            float gpa;

    public:
           char* set_name(char * n)
           {

                name=n;
                cout<<"Enter name   :";
                cin>>name;

                return name;

           }

           float set_gpa(float g)
           {

                gpa=g;
                cout<<"Enter CGPA   :";
                cin>>gpa;

                return gpa;

           }

           char set_grade()

           {

                if(gpa>=3.00&&gpa<=4.00)
                {
                    grade[1]='A';
                }

                else if(gpa>=2.00&&gpa<=2.99)
                {
                    grade[1]='B';
                }

                else if(gpa>=0.00&&gpa<=1.99)
                {
                    grade[1]='F';
                }

                else
                {
                    cout<<"error"<<endl;
                }

                return grade[1];
           }
}M1;


int main()
{


    char name[20];
    char grade[1];
    float gpa;

    cout<<"=================================="<<endl;
    cout<<"         ENTER INFORMATION        "<<endl;
    cout<<"=================================="<<endl;

    M1.set_name(name);
    M1.set_gpa(gpa);
    M1.set_grade();

    cout<<"=================================="<<endl;
    cout<<"            RESULT SLIP           "<<endl;
    cout<<"=================================="<<endl;

    cout<<"Name     : "<<M1.name;
    cout<<"GPA      : "<<M1.gpa;
    cout<<"Grade    : "<<M1.grade;

    return 0;

}

查看
类别标记的定义

private:
        char * name;
        char * grade;
        float gpa;
所有这三个成员都声明为private,这意味着它们只能由类的成员函数访问-例如,在
set\uu
函数中可以访问。如果您希望在类本身的上下文之外访问数据,请定义
get\uu
函数或公开数据,具体取决于您希望执行的操作


也,因为这是C++,所以您应该真正使用<代码> STD::String 字符串。

这个问题似乎是偏离主题,因为它是关于在代码转储中查找错误。所以不是调试服务。这里:
cout
private:
        char * name;
        char * grade;
        float gpa;