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

建设工程新工艺网站app推广团队

建设工程新工艺网站,app推广团队,深圳电商网站设计,甘肃网络公司网站建设1、概念 (1)this指针是一个特殊的指针,存储的对象的首地址 (2)类的成员函数(包括构造函数和析构函数)内部,隐含一个this指针,指向对象的首地址 (3&#xf…

1、概念

(1)this指针是一个特殊的指针,存储的对象的首地址

(2)类的成员函数(包括构造函数和析构函数)内部,隐含一个this指针,指向对象的首地址

(3)类内部,访问对象的成员变量或者调用对象的成员方法,都是通过this指针完成的,即使没有显示写出this,编译器也会自动添加

this指向谁?谁调用指向谁(哪个对象调用就指向哪个对象的首地址)

2、应用

2.1 区分同名参数和成员属性

class Person{
private:
    int age;
    string name;
public:
    //可以用this指针来区分同名参数和成员属性
    Person(int age,string name){
        this->age=age;
        this->name=name;
        cout<<this<<endl;
    }
};

2.2 类中成员的调用都是依赖于this指针的

    void show(){
        //类中成员的调用都是依赖于this指针完成的,即使不加this,默认编译器也会自动添加
        cout<<"姓名:"<<this->name<<",年龄:"<<age<<endl;
        cout<<this<<endl;
    }

2.3 链式调用

当返回值是对象引用时,可以返回*this,此函数支持链式调用

支持链式调用的成员函数的特点:

        (1)返回值类型是当前类的引用

        (2)return后面是*this

#include <iostream>
using namespace std;
class Person{
private:
    int age;
    string name;
public:
    Person(int age,string name){
        this->age=age;
        this->name=name;
        cout<<this<<endl;
    }
    void show(){
        cout<<"姓名:"<<this->name<<",年龄:"<<age<<endl;
        cout<<this<<endl;
    }
    int get_age(){
        return age;
    }
    ~Person(){
        cout<<"ga"<<endl;
        cout<<this<<endl;
    }
    //可以实现链式调用
    Person&add_age(int num){
        this->age+=num;
        return*this;
    }
};
int main(){
    Person zs(18,"zs");
    zs.show();
    Person*ls=new Person(16,"ls");
    //普通调用
    cout<<ls->get_age()<<endl;  //16
    ls->add_age(2);
    cout<<ls->get_age()<<endl;  //18
    ls->add_age(10);
    cout<<ls->get_age()<<endl;  //28
    ls->add_age(3);
    cout<<ls->get_age()<<endl;  //31
    //链式调用
    cout<<ls->add_age(2).add_age(3).add_age(10).get_age()<<endl;  //46
    return 0;
}

 

面试题 

new的过程(创建对象的过程):

1、内存分配

(1)new运算符首先调用底层的内存分配函数(通常是operator new),为对象分配足够的内存空间

(2)如果内存分配失败(例如,由于内存不足),operator new会抛出一个std::bad_alloc异常

2、构造函数调用

(1)一旦内存分配成功,new运算符会在分配的内存上调用对象的构造函数来初始化对象属性

(2)这意味着对象的成员变量会被初始化,并且任何在构造函数中编写的初始化代码都会被执行

3、返回指针

最后,将初始化过的对象的首地址赋值给this, 并将this返回

http://www.dtcms.com/wzjs/197624.html

相关文章:

  • 做推送封图的网站seo优化排名技术百度教程
  • 2023智慧树网络营销答案镇江seo
  • 网站备案几天中国十大热门网站排名
  • 3800给做网站最经典的营销案例
  • 手机网站在哪里找到网站seo优化有哪些方面
  • 网站建设详细方案怎么在网上做广告宣传
  • 怎么做订阅号百度seo优化技术
  • 建设银行的官方网站电话做一个app软件大概要多少钱
  • 基于html的旅游网页设计毕业论文衡阳seo优化推荐
  • 建设网站的企业专业服务百度网址提交
  • 西安东郊网站建设公司百度推广计划
  • 个人简历word可编辑wp博客seo插件
  • 商丘做手机做网站免费友情链接平台
  • 校园网站开发目的守游网络推广平台
  • 做网站的收益来源网络销售是什么
  • 合肥做网站联系方式河南最新消息
  • 网站建设单页怎么收录网站
  • 广西柳州网站建设价格南宁网站公司
  • 购物平台口碑最好的是哪个谷歌seo推广公司
  • metro 导航网站莆田seo推广公司
  • 设计一个学院网站seo外链建设方法
  • 讯美深圳网站建设seo引擎优化
  • 来年做哪个网站能致富长沙百度网站推广公司
  • 真人性做爰免费网站十大永久免费的软件下载
  • 各大高校的校园网站建设推广营销大的公司
  • 中国建筑网官网首页宁波网站建设网站排名优化
  • wordpress模版怎么弄北京seo教师
  • dw做网站的导航栏怎么做带佣金的旅游推广平台有哪些
  • 在自己网站做blog网络营销和传统营销的区别
  • 本地岑溪网站开发最新地址