int a = ;
int *p = &a; //定义指针p指向变量a
*p = ; //*p代表a的值 int b = ;
p = &b; //p指向变量b
*p = ; //此时*p代表b的值 int c[] = {,,};
p = c; //此时p是指向数组c的指针,具体指向数组的第一个元素,即(&c[0]/p/c)三种写法等价
int a = ;
int &b = a; //定义引用b为变量a的引用,即a的别名(可理解为a的“外号”)
b = ; //给b赋值6即给a赋值6,此时a的值变为6 引用经典用法:
void ValueExchange(int &a,int &b)
{
int temp = ;
temp = a;
a = b;
b = temp;
}
ValueExchange(a,b); //调用函数实现值交换,和c语言指针相比,c++的引用显然更加简便
const int a = ;    //常量a = 3,const的含义即是被const修饰的值拒绝被修改

const int *p;
int const *p; //两种写法等价,此时无法用*p来改变p指向的变量的值,因为*p被const所修饰 int * const p; //此时p只能指向一个变量,之后不能指向其他变量,因为p被const修饰 const int &b;
int const &b; //两种写法等价,&b无法被修改,即b引用的变量无法被修改,常用于上面的值交换类型函数,保护传入的变量数据的安全,拒绝被函数内部修改

C++指针、引用、const的更多相关文章

  1. Delphi函数翻译成VC要注意句柄指针传递(传递Handle的时候,必须加上一个指针引用,才能消除编译错误)

    Delphi里做了魔法变化,每个变量名称本身就是指针,因为不怎么需要指针语法.我也不知道是不是因为这个原因引起的Delphi与VC对句柄的不同处理. 这是Delphi的强行关机函数,好用,调用方式:W ...

  2. C++ Prime:指针和const

    与引用一样,也可以令指针指向常量或非常量,类似于常量引用,指向常量的指针不能用于改变其所指对象的值.要想存放常量对象的地址,只能使用指向常量的指针: const double pi = 3.14; / ...

  3. 指针和const一些注意事项

    1.常量指针(底层const) 指向常量的指针,指针所指向的对象的值无法被修改,若想存放常量对象的地址,只能使用指向常量的指针. 2.指针常量(顶层const) 指针本身是常量,指针本身的值不可修改. ...

  4. 引用、数组引用与指针引用、内联函数inline、四种类型转换运算符

    一.引用 (1).引用是给一个变量起别名 定义引用的一般格式:类型  &引用名 = 变量名: 例如:int a=1;  int  &b=a;// b是a的别名,因此a和b是同一个单元 ...

  5. Spline样条函数 //C++关键字:operator // 重载函数 // 隐含的this指针 // 指针和const限定符

    在数学学科数值分析中,样条是一种特殊的函数,由多项式分段定义.样条插值是使用一种名为样条的特殊分段多项式进行插值的形式.由于样条插值可以使用低阶多项式样条实现较小的差值误差,这样就避免了使用高阶多项式 ...

  6. C++学习笔记1_ 指针.引用

    1.引用的本质struct typeA{ int &a;}struct typeB{ int *a;}int main(void){ cout<<sizeof(struct typ ...

  7. paip.指针 引用 c++ java的使用总结.

    paip.指针 引用  c++ java的使用总结. ///////////////一般一个变量包括下面的信息 a.地址(指针)  b.命名(引用,别名)   c.变量内容.. 指针是一个变量的地址, ...

  8. 指向const的指针和const指针

    1.指向const的指针:const int *p 或 int const *p 解释:p是一个指针,指向const int类型的常量:指针指向的内容为常量,因此不能改变*p的值,但指针p可以改变,指 ...

  9. C++中的指针与const

    刚开始接触C++时,指针和const之间的关系有点混乱,现在总结如下: 一.指向const变量的指针 #include<iostream.h> void main() { const in ...

  10. C++常量的引用 const

    如果是对一个常量进行引用,则编译器首先建立一个临时变量,然后将该常量的值置入临时变量中,对该引用的操作就是对该临时变量的操作.对C++常量引用可以用其它任何引用来初始化:但不能改变. 关于引用的初始化 ...

随机推荐

  1. CodeForces - 359C-Prime Number

    Simon has a prime number x and an array of non-negative integers a1, a2, ..., an. Simon loves fracti ...

  2. P5019 铺设道路 (NOIP2018)

    传送门 NOIP2013原题 貌似官方数据都是一模一样的 以前写过竟然毫无印象? 考场上自己瞎JB推结论 显然,如果连续的两端区间可以左边区间减 k 次,右边区间也减 k 次 那么把两个区间合并起来一 ...

  3. 8.11zju集训日记

    今天的比赛打得很不好,前一个小时的看的题目都非常难,没有做出题目,中期看到两道题,一道题是我读题,金大佬solo的,另外一道题是金大佬读题,写了代码但wa了,然后我和zz找bug,最后发现答案的范围是 ...

  4. Codeforces Round #334(div.2)(新增不用二分代码) B

    B. More Cowbell time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...

  5. python3 rjust()函数笔记

    #rjust(12,'l')"12是字符串的长度,l是当字符串不够长的时候,用l填充.并且字符串右对齐".返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串.如果 ...

  6. 关于在JS中设置标签属性

    Attribute 该属性主要是用来在标签行内样式,添加.删除.获取属性.且适用于自定义属性. setAttribute("属性名",属性值“”):这个是用来设置标签属性的: re ...

  7. linux下lua运行环境安装

    1.下载安装包: [root@H0f ~]# wget  http://www.lua.org/ftp/lua-5.2.4.tar.gz    http://www.lua.org/ftp/lua-5 ...

  8. vue 父组件调用子组件的函数

    子组件 <template> <div> child </div> </template> <script> export default ...

  9. java——简易版build模式

    参考教程:https://blog.csdn.net/fanxudonggreat/article/details/78927773 public class Computer { private S ...

  10. NIOGoodDemo

    Java NIO是在jdk1.4开始使用的,它既可以说成“新I/O”,也可以说成非阻塞式I/O.下面是java NIO的工作原理: 1. 由一个专门的线程来处理所有的 IO 事件,并负责分发. 2. ...