C语言和C++中的::和->是什么意思?
5个回答
展开全部
1、“::”类作用域操作符。“::”指明了成员函数所属的类。如:M::f(s)就表示f(s)是类M的成员函数。
2、->和
.实现的功能是一样的,都是访问类的成员变量或成员函数,.
用于普通变量操作,->只能用于指针变量操作。如:若a为一指向对象的指针,a->f(s)就表示调用a所指的对象中的成员函数f(s)。
2、->和
.实现的功能是一样的,都是访问类的成员变量或成员函数,.
用于普通变量操作,->只能用于指针变量操作。如:若a为一指向对象的指针,a->f(s)就表示调用a所指的对象中的成员函数f(s)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
::是作用域操作符,表示你引用的变量限定在该作用域内。
->是箭头操作符,设计它的目的是为了简化输入,以及增强程序的可读性的
->的功能相当于解引用操作符*和成员调用操作符.的组合体
例如:
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
来访问,是不是更简单明了呢
}
二者的功能是一样的。总结就是,->的功能就是提供了一种对象指针更方便的访问对象成员的方法
->是箭头操作符,设计它的目的是为了简化输入,以及增强程序的可读性的
->的功能相当于解引用操作符*和成员调用操作符.的组合体
例如:
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
来访问,是不是更简单明了呢
}
二者的功能是一样的。总结就是,->的功能就是提供了一种对象指针更方便的访问对象成员的方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个要看具体语境了,::的话一般用在名空间,简单理解::前面是一个姓,->简单理解就是箭头
我举两个例子string::npos,npos是找不到子串函数,前面加个string就是指string类型的找不到子串
又map
::itreator
it=ma.begin();就是指map类型的iterator迭代器。
map容器里面每个元素都有两个值,你想访问第一个那么就it->first;it指向某个元素的第一个值。
当然具体你还要碰到了慢慢积累
我举两个例子string::npos,npos是找不到子串函数,前面加个string就是指string类型的找不到子串
又map
::itreator
it=ma.begin();就是指map类型的iterator迭代器。
map容器里面每个元素都有两个值,你想访问第一个那么就it->first;it指向某个元素的第一个值。
当然具体你还要碰到了慢慢积累
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
::
是用在类和其中的函数之间的,表明后面的函数或变量属于这个类,
用在描述类上
--》是类似的,只是用在对象上,表明这个对象里面的什么东西,用在实例化的对象上
是用在类和其中的函数之间的,表明后面的函数或变量属于这个类,
用在描述类上
--》是类似的,只是用在对象上,表明这个对象里面的什么东西,用在实例化的对象上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询