对象成员的表示与结构变量成员表示相同,使用运算符.或->
时间: 2024-02-18 09:01:48 浏览: 39
对于 C++ 中的类,我们可以使用`.`运算符来访问对象的成员变量和成员函数,也可以使用`->`指向运算符来访问指向对象的指针的成员变量和成员函数。
例如,如果我们有一个类`Person`,其中有一个成员变量`age`,我们可以创建一个对象并使用`.`运算符来访问它的成员变量:
```c++
Person p;
p.age = 18;
```
或者,我们可以创建一个指向`Person`对象的指针并使用`->`指向运算符来访问它的成员变量:
```c++
Person* p = new Person;
p->age = 18;
```
无论是使用`.`还是`->`,它们都用于访问对象或指针的成员变量和成员函数。
相关问题
运算符 -> 或 ->* 应用于 "MySharedPtr<TestClass>" 而不是指针类型
运算符 -> 或 ->* 只能应用于指针类型,而 MySharedPtr<TestClass> 不是指针类型。MySharedPtr 是一个智能指针,它封装了指向 TestClass 对象的指针,并提供了自动内存管理功能。如果想要访问 TestClass 对象的成员变量或成员函数,应该使用智能指针提供的成员访问操作符 -> 或 *,而不是运算符 -> 或 ->*。例如:
```
MySharedPtr<TestClass> ptr(new TestClass);
ptr->memberFunction(); // 访问 TestClass 对象的成员函数
(*ptr).memberVariable = 10; // 访问 TestClass 对象的成员变量
```
在对结构变量操作时,.被称为成员或者分量运算符
是的,你说得对。在C语言中,.被称为成员或者分量运算符,用于访问结构体变量中的成员。例如,如果有一个结构体类型为Person,其中包含name和age两个成员,那么可以通过person.name和person.age来访问这两个成员。这种操作方式可以使得代码更加清晰和简洁,同时也方便了程序员对结构体类型的操作。