C语言和C++中的::和->是什么意思?

 我来答
慎骏桀綦平
2020-01-16 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:29%
帮助的人:720万
展开全部
::是域操作符,比如using
std::
cout;这句意思是使用默认名空间中的cout流,std是默认名空间,它是一个域;->是指向操作符,比如在结构体或者类中用这个结构体或者类的指针指向它的一个成员,比如
class
A{
int
data;
char
key;
}
class
*p;
p=&A;
则A.data和p->data等价。
说骄犁昆
2019-09-27 · TA获得超过3.2万个赞
知道小有建树答主
回答量:1.2万
采纳率:27%
帮助的人:829万
展开全部
1、“::”类作用域操作符。“::”指明了成员函数所属的类。如:M::f(s)就表示f(s)是类M的成员函数。
2、->和
.实现的功能是一样的,都是访问类的成员变量或成员函数,.
用于普通变量操作,->只能用于指针变量操作。如:若a为一指向对象的指针,a->f(s)就表示调用a所指的对象中的成员函数f(s)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
象夏菡赤白
2020-02-11 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:34%
帮助的人:695万
展开全部
::是作用域操作符,表示你引用的变量限定在该作用域内。
->是箭头操作符,设计它的目的是为了简化输入,以及增强程序的可读性的
->的功能相当于解引用操作符*和成员调用操作符.的组合体
例如:
class
C
{
static
int
a;
}
访问a就可以使用C::a来访问,表明这个变量a具有类C的作用域。它在该类内可见。了解更多,那么namespace就是个很好的例子。
另外。
class
C
{
private:
int
a;
}
void
main()
{
C
*p=new
C();
//访问a可以使用如下
(*p).a
或者直接
p->a
来访问,是不是更简单明了呢
}
二者的功能是一样的。总结就是,->的功能就是提供了一种对象指针更方便的访问对象成员的方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逢灵萱帛齐
2019-12-29 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:30%
帮助的人:796万
展开全部
这个要看具体语境了,::的话一般用在名空间,简单理解::前面是一个姓,->简单理解就是箭头
我举两个例子string::npos,npos是找不到子串函数,前面加个string就是指string类型的找不到子串
又map
::itreator
it=ma.begin();就是指map类型的iterator迭代器。
map容器里面每个元素都有两个值,你想访问第一个那么就it->first;it指向某个元素的第一个值。
当然具体你还要碰到了慢慢积累
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
枚又夏桥乐
2019-06-18 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:795万
展开全部
::
是用在类和其中的函数之间的,表明后面的函数或变量属于这个类,
用在描述类上
--》是类似的,只是用在对象上,表明这个对象里面的什么东西,用在实例化的对象上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式