c++中 . 和 -> 的区别是什么?

如题。原来我以为->是C的写法。结果发现在c++里,有些地方.和->是不能替换的... 如题。

原来我以为->是C的写法。结果发现在c++里,有些地方 . 和 ->是不能替换的
展开
 我来答
ynynyn14
2018-12-04 · TA获得超过3102个赞
知道答主
回答量:7
采纳率:0%
帮助的人:1.8万
展开全部

c++中 . 和 -> 主要是用法上的不同。

1、A.B则A为对象或者结构体;

2、A->B则A为指针,->是成员提取,A->B是提取A中的成员B,A只能是指向类、结构、联合的指针;

例如:

class student

{

public:       

string name[20];

}

第一种情况,采用指针访问 student *xy,则访问时需要写成 *xy.name="hhhhh";等价于xy->name="hhhhh"。

第二种情况,采用普通成员访问 student xy,则访问时需要写成 xy.name="hhhhh"。

扩展资料

算术运算符与算术表达式

C++中的算术运算符包括基本的算术运算符和自增、自减运算符。由算术运算符、操作数和括号构成的表达式称为算术表达式。

基本算术运算符有:+(加)、-(减或负号)、*(乘)、/(除)、%(取余)。其中“-”作为负号时为一元运算符,其余都为二元运算符。这些基本算术运算符的意义与数学中相应符号的意义是一致的。它们之间的相对优先级关系与数学中的也是一致的,即先乘除、后加减,同级运算自左向右进行。

黄邦勇帅哥哥
2010-03-22 · TA获得超过3987个赞
知道大有可为答主
回答量:1199
采纳率:100%
帮助的人:485万
展开全部
主要用于访问类的成员,->主要用于类类型的指针访问类的成员,而.运算符,主要用于类类型的对象访问类的成员。
举例
class A
{public :int a}
A ma;
A *p=&ma;
那么指针p应使用->来访问成员a,比如p->a,而ma应使用.来访问,比如ma.a区别就在这里,凡是指针就使用->,对象就使用.运算符。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
花生and奶牛
2010-03-23 · 超过12用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:0
展开全部
. 是成员运算符主要用在c++中用来确定类对象和成员之间的关系
-> 是指针的一种用法,是用来指向某个变量的地址.
他们都是操作运算符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaohuh421
2010-03-23 · TA获得超过904个赞
知道小有建树答主
回答量:897
采纳率:0%
帮助的人:377万
展开全部
.号左边的是个类的对象,或者结构体的对象
->号的左边是一个类的对象指针,或者结构体对象的指针
CString str; CString类的对象 str.GetLength();
CString *pStr; CString类的指针 str->GetLength();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
月月voice
2019-08-30 · 超过12用户采纳过TA的回答
知道答主
回答量:58
采纳率:85%
帮助的人:11万
展开全部
您好!
a->b中a为指针,b为成员变量。
a.b中a为结构体变量/类对象,b为成员变量。
另外,C语言就已实现结构体,所以C/C++语言可以在不同的情况用上面对应的操作符。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式