C++ 指针与引用有何区别
2个回答
展开全部
C++中:
1、指针,通俗的理解就是,把内存的地址记下来,以便直接跳到相应的内存地址上去取数据,或执行指令。(指针C++中算是比较高级的玩法,非常规的指针值改动常常会造成莫明的错误,然而有些高明的指针运用可以事半功倍。但在当前模块化编程中,一般不建议随意动用非常规的指针值改动)。C++的常规指针运用中,一般以函数参变量带入指针变量稍多一些,实际作用常常是用于影响函数体外的数值、数据。
2、引用,这个概念是面向对象编程才有的。引用,指的是取某个对象的地址,因为也是取地址的,所以,某些时候会让程序员感觉它很象是指针。事实上,个人认为,它的本质还是指针,只是在使用引用的情况下,编程环境在对代码的校验过程中,一般会对于一些想作非常规的地址修改的代码判错,从而减少不可预期错误的发生。比如你定义了一个对象AAB,然后,你让AAB指向AAB+1那个地址,如下代码:AAB = AAB+1,编译器就会拒绝。而如果AAB是一个指针的话,编程器就会放行进行编译。
1、指针,通俗的理解就是,把内存的地址记下来,以便直接跳到相应的内存地址上去取数据,或执行指令。(指针C++中算是比较高级的玩法,非常规的指针值改动常常会造成莫明的错误,然而有些高明的指针运用可以事半功倍。但在当前模块化编程中,一般不建议随意动用非常规的指针值改动)。C++的常规指针运用中,一般以函数参变量带入指针变量稍多一些,实际作用常常是用于影响函数体外的数值、数据。
2、引用,这个概念是面向对象编程才有的。引用,指的是取某个对象的地址,因为也是取地址的,所以,某些时候会让程序员感觉它很象是指针。事实上,个人认为,它的本质还是指针,只是在使用引用的情况下,编程环境在对代码的校验过程中,一般会对于一些想作非常规的地址修改的代码判错,从而减少不可预期错误的发生。比如你定义了一个对象AAB,然后,你让AAB指向AAB+1那个地址,如下代码:AAB = AAB+1,编译器就会拒绝。而如果AAB是一个指针的话,编程器就会放行进行编译。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询