当前位置: 首页 > wzjs >正文

安徽省建设厅查询网站枣庄住房和城乡建设厅网站

安徽省建设厅查询网站,枣庄住房和城乡建设厅网站,企业官网设计图,福建外贸网站这两个符号——& 和 *,以及 -> 和 . 在C中都是非常基础而且重要的内容,尤其是涉及指针和引用时的应用。为了帮助你系统、清晰、详细理解,我会逐个讲解这些符号的含义、作用、场景,并配合示例让你更直观地理解。一、C中的 &…

这两个符号——& 和 *,以及 -> 和 . 在C++中都是非常基础而且重要的内容,尤其是涉及指针和引用时的应用。为了帮助你系统、清晰、详细理解,我会逐个讲解这些符号的含义、作用、场景,并配合示例让你更直观地理解。


一、C++中的 & 和 * 符号详细讲解

1. & 符号(取地址符、引用符)

① 取地址符(Address-of Operator)

作用:获取变量的内存地址。

示例

复制代码

int a = 10;
int* p = &a; // 取变量a的地址,存到指针p中

详细说明

  • 变量名 a 表示变量本身
  • &a 表示“变量a的地址”,即这个变量在内存中的位置
  • 赋值给 int* p(指针)后,指针存储了变量a的地址

2. & 符号(引用)

作用:创建一个引用,也就是某个变量的别名。

示例

复制代码

int a = 20;
int& ref = a; // ref 是 a 的引用
ref = 30;    // 其实就是修改 a 的值

说明

  • ref 和 a 指向同一个内存位置
  • 引用必须在定义时初始化,之后不能指向别的变量
  • 引用常用于函数参数或返回值,避免复制,提高效率

二、C++中的 * 符号(解引用符和声明指针变量)

1. 解引用操作符(Dereference Operator *

作用:通过指针访问指向的变量。

示例

复制代码

int a = 10;
int* p = &a;     // 指针p存变量a的地址
std::cout << *p; // 通过解引用访问a的值,输出10

说明

  • *p 表示“取p指向的内容”
  • 只有指针在指向合法地址时,使用 * 解引用才有效,一旦指针为空或指向无效地址会引发错误

2. 声明指针变量

示例

复制代码

int* p;   // 声明一个指向int的指针
p = &a;   // 指针存变量a的地址

注意事项

  • * 在声明时表示“指针类型”
  • 指针声明的语法:类型* 变量名;

三、指针和引用的比较总结

特性指针 (*)引用 (&)
是否可为空可以空(指向NULL或nullptr)不可空(必须初始化且不可改变)
重新绑定可以改变指向绑定后不能变
语法使用需要解引用:*p类似变量:ref
常用场景需要指向多个不同对象或动态管理作为参数传递,确保引用传递

四、C++中的 . 和 ->

1. .(成员访问操作符)

作用:访问对象(实例或结构体)中的成员。

示例

复制代码

class Person {
public:int age;
};Person p;
p.age = 25; // 使用 '.' 访问成员

2. ->(成员访问指针操作符)

作用:通过指向对象的指针访问成员。

示例

复制代码

Person* pPtr = &p;
pPtr->age = 30; // 等价于 (*pPtr).age = 30;

总结

  • 使用对象实例时,用 .
  • 使用指针时,用 ->

五、this 指针和成员访问

在类的方法中,this 指针指向调用该方法的对象。用以区分成员变量和参数或局部变量,或者返回对象自身。

1. this-> 的使用场景

  • 当成员变量和参数或局部变量名字相同时,用 this-> 明确指向成员。

示例

复制代码

class Person {
public:int age;void setAge(int age) {this->age = age; // 区分参数和成员变量}
};

2. this. 与 this-> ?

  • 通常在类的非静态成员函数中,this为指针,访问成员用 this->成员
  • this. 是没有的,this 是指针,用于解引用(不常用)

总结

  • 一般用 this-> 来访问成员,特别是在参数名与成员变量相同时

六、总结详解

  • & 操作符

    • 获取变量的地址(取地址)
    • 定义引用,作为某变量的别名(引用类型)
  • * 操作符

    • 解引用指针,访问指针指向的变量
    • 在声明中定义指针类型(int* p
  • 成员访问符

    • .:实例对象访问成员
    • ->:指针访问成员(指针->成员 等价于 (*指针).成员
  • this 指针

    • 类成员函数中,指向调用对象
    • 常用在区分成员变量和局部变量或参数

举个完整示例串联理解

复制代码

#include <iostream>
using namespace std;class Person {
public:string name;int age;void setData(string name, int age) {this->name = name;          // 用this->区分成员变量和参数this->age = age;}void showData() {cout << "Name: " << this->name << ", Age: " << this->age << endl;}
};int main() {Person p;p.setData("Alice", 25);        // 通过对象调用成员函数p.showData();Person* pPtr = &p;               // 指针指向对象pPtr->setData("Bob", 30);        // 指针调用成员函数(用 ->)pPtr->showData();int num = 100;int* pNum = &num;                 // 指针存地址cout << "num的地址: " << &num << endl;    // 取地址cout << "pNum指向的值: " << *pNum << endl; // 解引用,访问值int& ref = num;                   // 引用变量ref = 200;                        // 改变引用,实际就是改numcout << "num的值: " << num << endl;return 0;
}

最后一点建议

理解这些符号的关键在于:

  • 多练习动手写一些小程序,试着用指针、引用、成员访问符
  • 观察输出,理解变量的内存布局和指针的关系
  • 记住 & 既可以取地址,也可以定义引用,看上下文区分

文章转载自:

http://DiX76bwS.rcfxq.cn
http://GUEJYfNW.rcfxq.cn
http://EHrhdbBT.rcfxq.cn
http://AUX7QNXh.rcfxq.cn
http://N3tKmE1p.rcfxq.cn
http://piJ1iSu1.rcfxq.cn
http://6BqWfbT6.rcfxq.cn
http://3o8YbPS5.rcfxq.cn
http://XyZmmtBO.rcfxq.cn
http://PLjlY85r.rcfxq.cn
http://TsINmSYJ.rcfxq.cn
http://CsMqyxhZ.rcfxq.cn
http://ITf5EmF7.rcfxq.cn
http://eSlSpYQg.rcfxq.cn
http://hwEh7W0Z.rcfxq.cn
http://2oXNw4ru.rcfxq.cn
http://wuFCmSRI.rcfxq.cn
http://JHBuJZbn.rcfxq.cn
http://qmlDxhjj.rcfxq.cn
http://RbLLKxGW.rcfxq.cn
http://FQu3Qodl.rcfxq.cn
http://FUqKU5P2.rcfxq.cn
http://s0f7fV3n.rcfxq.cn
http://CHMdmVlK.rcfxq.cn
http://qUMwUcTu.rcfxq.cn
http://fSTcFRaX.rcfxq.cn
http://iXDF97Hj.rcfxq.cn
http://YDglziKY.rcfxq.cn
http://UWM4dXVh.rcfxq.cn
http://ccP3UHA9.rcfxq.cn
http://www.dtcms.com/wzjs/606522.html

相关文章:

  • 企业网站案列品质网站设
  • 传销公司做网站运营做网站后台要学什么
  • 网站关键词优化怎么做网站模板下载后怎么用
  • 公司专业做网站一些做的好的网站
  • 淅川做网站网站维护技术
  • 东莞网站建设五金建材飞飞cms官网
  • 网站关键字没有排名广州知名设计公司排名
  • 南宁网站建设索王道下拉四川集团网站建设
  • 购物网站制作wordpress付费查看简历
  • 做个网站上百度怎么做wordpress博客主题手机
  • php个人网站源码下载注册公司代理费用多少钱
  • 淮安做网站的有多少钱汽车4s店网站建设策划
  • 免费开通网站数字营销1+x
  • 由担路网提供网站建设ppt模板免费模板
  • 深圳网站制作公司流程旅游网站案例
  • 怎么查看网站是否做百度排名网站 东莞长安
  • 杭州蒙特网站建设有没有做网站的博士专业
  • 青海网站建设加q5299丶14602做词网站开发的毕业设计
  • 让别人做网站注意事项外贸网站建设系统
  • 中专网站建设课程现在用什么cms做网站好
  • 集团网站设计特性手表网站代码
  • 如何学习网站建设app短链接怎么生成
  • 家具网站的建设wordpress站点搭建
  • 电商网站设计趋势做网站流量
  • 南宁手机企业网站定制推广平台排行榜app
  • 买权重网站电子商务网络技术
  • 商洛网站建设公司旅游的网站怎么做的
  • 建设部网站已经公布黑名单pc网站建设的三大条件
  • 阿里云网站建设 部署与发布笔记49you网页游戏平台
  • 青岛网上房地产网站wordpress如何上传ppt