为什么我得到的表达式必须具有类类型错误?

时间:2019-10-12 17:00:30

标签: c++

我试图运行这个简单的代码块,但出现错误:表达式必须具有tom.nametom.id的类类型。我在这里做错了什么?

#include <iostream>
using namespace std;

class Student
{
    string name;
    int id;
    int age;
};


int main()
{
    Student* tom = new Student;
    tom.name = "tom";
    tom.id = 1;
}

1 个答案:

答案 0 :(得分:0)

您错误地访问了指针。从指针访问内部变量需要local objectTwo而不是->运算符。

切换代码:

.

或者,如果您真的要使用Student* student_ptr = new Student; student_ptr->name = "Tom"; student_ptr->id = 1; 运算符,则可以执行以下操作:

.