c++结构体中什么时候用"." ,什么时候用"->" ?

如题所述

对于引用符而言," . "带有 “查看” 的意思,所以,他可是归类为可显示的操作符。对于数据,是存在数据的覆盖和集合的,结构体相当于集合,那么,就用显示符号" . "显示结构体中的数据。

而->,是指向符,指向集合类的数据的地址。指针可以指向地址,特殊符号 -> 也是指向的!但是 -> 特别的只能是指向集合类的数据的地址,所以结构体中,如果是指向集合类的数据,可以用->
【注;类里的数据也可以用->】
【注2;上面凡是可以用->的,都可以用指针 * ,只不过复杂很多罢了】
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-02-12
你的c++结构体是对象时使用"." ,是指针时用"->"
struct test
{
float a;
int b;
};
test pn1;
int a=pn1.a;
test *p=&pn1;
a=p->a;本回答被提问者采纳
第2个回答  2013-02-12
普通结构体对象中使用点.,而指针型结构体对象中的参量使用用->,比如*p为指向结构的指针则使用p->number

c++结构体中什么时候用"." ,什么时候用"->" ?
对于引用符而言," . "带有 “查看” 的意思,所以,他可是归类为可显示的操作符。对于数据,是存在数据的覆盖和集合的,结构体相当于集合,那么,就用显示符号" . "显示结构体中的数据。而->,是指向符,指向集合类的数据的地址。指针可以指向地址,特殊符号 -> 也是指向的!但是 -> 特别的只能...

c++语言中"."与"->"的区别是什么?
你好!在C++语言中"."和"->"都是用来访问结构成员的符号,这一点的确没有区别,区别在于符号的左边。"." 通过结构名直接访问结构成员,左边是结构的名称!"->"通过指向结构的指针间接地访问结构成员,左边是指针变量!如还不明白可联系我,祝学习愉快!

C++中“->”和“.”在使用中有什么区别呢
1、->是指针指向其成员的运算符 .是结构体的成员运算符。最大的区别是->前面放的是指针,而.前面跟的是结构体变量。2、例如:struct A{ int a; int b;};A *point = malloc(sizeof(struct A));point->a = 1;A object;object.a = 1;...

c++中 . 和 -> 的区别是什么?
c++中 . 和 -> 主要是用法上的不同。1、A.B则A为对象或者结构体;2、A->B则A为指针,->是成员提取,A->B是提取A中的成员B,A只能是指向类、结构、联合的指针;例如:class student { public:string name[20];} 第一种情况,采用指针访问 student *xy,则访问时需要写成 *xy.name="hhh...

c++中的“->”和“.”可以通用吗?
两个是不同概念的东西。准确地说,它们的目的相同,但是作用的对象不同。第一个是对于一个指向某一结构体(struct 或class)的指针才可以用的;第二个是对于结构体才有用。相同的用法是用于访问该结构体的某个子变量或函数。用反了就是编译错误!

C++中 -> 和 . 的区别
-> 和 . 都用于访问一个结构的成员,访问一个结构变量的成员使用.如果你不是访问的变量而是访问的指向变量的指针则用->。举个例子:定义一个结构体 struct test{ char x;};struct test *ptr,mytest;\/\/ptr为指针,mytest为变量 ptr = &mytest;\/\/访问x的两种方法 char temp = mytest.x;temp...

c++中使用指针的.和->运算符的区别
一般,结构体和类中,对于非结构指针实例用"."(下面的pt),而指针型的结构体实例用"->"(下面的*p)。举例子来说:struct point { int x;int y; \/\/包含两个变量成员 };void main(){ point pt;point *p;pt.x=1;pt.y=2;cout<<pt.x<<endl<<pt.y<<endl;\/\/不能用“->”cout<<p...

c++中 -> 和 :: 分别代表什么意思
->是用于调用类,结构体指针的成员.::是用于在类外定义类里面函数的函数体.如:你定一个类 class a { int k;public:int i;void f1(int j);\/\/...} 你在类外定义f1函数就需要如下定义:a::f1(int j){ k=i+j;} 你在主函数中定义一个a类的对象,这个对象是指针形式的.如下定义:void ...

C++类指针在访问的时候何时用"->",何时候用"."
p->set( )或者 p[0].set( ) 或者 (*p).set( )当然如果p指向一个结构体数组或对象数组的话,则可以这样用:p->set( )表示对数组的第0个元素进行操作,等价于p[0]->set( )或*(p+0).set( ),如果想访问数组的第i个对象中的成员,则可以有这样几种方式,他们是等价的:p[i],set( )...

c++中“.”、“*”、“->”的用法和区别。
.是取结构体变量中的成员 是取指针变量指向的内存的值 ->取结构体指针指向的结构体中的成员

相似回答