当前位置:网站首页>02 - 3. Différences entre les pointeurs et les références
02 - 3. Différences entre les pointeurs et les références
2022-07-19 11:35:00 【Les rues de Leningrad】
Préface:Cet article est principalement destiné à un examen personnel,Recherche de simplicité,Merci pour votre référence、Communication et manutention,Les modifications et améliorations ultérieures peuvent se poursuivre..
Parce que c'est un examen personnel,Il y aura compression partielle et omission.
Différences entre les pointeurs et les références
int main()
{
int a = 10;
int& ra = a;//Syntaxe,Voilà pouraCet espace a pris un alias,Pas de nouvel espace ouvert
ra = 20;
int* pa = &a;//Syntaxe,Voici la définition d'unpaVariable pointeur,C'est parti4Stockage des octetsaAdresse
*pa = 20;
return 0;
}Du point de vue de la mise en œuvre de l'assemblage,La couche inférieure référencée est traitée de la même façon que le pointeur stocke l'adresse

Lors de l'utilisation de références et de pointeurs,Leurs différences:
1.Un alias qui définit conceptuellement une variable,Le pointeur stocke une adresse variable.
2.Doit être initialisé lors de la redéfinition des références,Pointeur non requis.
3.Référence après référence à une entité lors de l'initialisation,Vous ne pouvez plus faire référence à d'autres entités,Et le pointeur peut pointer vers n'importe quelle entité du même type à tout moment.
4.Non.NULLRéférences,Mais oui.NULLPointeur.
5.InsizeofSignification différente:Taille du résultat de référence comme type de référence,Mais le pointeur est toujours le nombre d'octets que prend l'espace d'adresse.
6.L'entité référencée est augmentée à partir de l'addition1,L'auto - addition du pointeur signifie que le pointeur est décalé vers l'arrière d'un type de taille
7.Pointeur à plusieurs niveaux,Mais il n'y a pas de référence à plusieurs niveaux.
8.Différentes façons d'accéder à l'entité,Le pointeur doit afficher la non - référence, Les références sont traitées par le compilateur lui - même
9.Les références sont relativement plus sûres à utiliser que les pointeurs
边栏推荐
- 开发那些事儿:如何解决RK芯片视频处理编解码耗时很长的问题?
- The concept of data guard broker and the configuration process of data guard broker
- Cmake常用命令(五)
- Chapter 1 of creating virtual machine (vmvare virtual machine)
- Similarities and differences between OA system and MES system
- 委派双亲之类加载器
- Basic operation of tree
- 翻墙后看什么?最热门的国外网站——翻墙网址导航
- At5147-[agc036d]negative cycle [DP, model conversion]
- PowerCLI 脚本性能优化
猜你喜欢

02-3、指针和引用的区别

Use and principle of ThreadLocal variable

SPI服务发现机制

性能优化之@Contended减少伪共享

Tier defect detection using full revolutionary network

TCP拥塞控制详解 | 7. 超越TCP

Delegate parents and other loaders

常见分布式锁介绍

The type of MySQL index (single column index, combined index, BTREE index, clustered index, etc.)

Unity Dropdown(可编辑,可输入)下拉选择框,带文本联想
随机推荐
zabbix代理服务器配置
SPI service discovery mechanism
OA系统与MES系统的异同点
委派双亲之类加载器
【PostgreSQL 】PostgreSQL 15对distinct的优化
02-2、缺省参数、函数重载、引用、隐式类型转换、关于报错
虚拟化排错概论
Un modèle de détection par défaut basé sur le réseau neuronal évolutif rapide dans le contrôle de la qualité des produits - lire les notes
03-2、
03-2、
Today's sleep quality record 79 points
Detailed explanation of MySQL show processlist
Some methods of early MCU encryption [get data in the comment area]
Loj#2324-「清华集训 2017」小 Y 和二叉树
【二叉树】之力扣牛客必刷题
TCP拥塞控制详解 | 7. 超越TCP
Resources for physics based simulation in computer graphics
Unity高版本退回低版本报错问题
Performance optimization @contented to reduce pseudo sharing
466-82(3、146、215)