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

网站开发到上线的流程莆田seo

网站开发到上线的流程,莆田seo,专业网站开发培训,建设部网站查资质目录 1.strcut和class的区别 2.将成员属性设置为私有 3.对象的初始化和清理 3.1 构造函数和析构函数 3.1.1 构造函数语法 3.1.2 析构函数语法 3.1.3 检验 3.2 构造函数的分类和调用 3.3 拷贝构造函数调用 1.strcut和class的区别 struct和class的唯一区别在于默认的访问…

目录

1.strcut和class的区别

2.将成员属性设置为私有

3.对象的初始化和清理

3.1 构造函数和析构函数

3.1.1 构造函数语法

3.1.2 析构函数语法

3.1.3 检验

3.2 构造函数的分类和调用

3.3 拷贝构造函数调用


1.strcut和class的区别

     struct和class的唯一区别在于默认的访问权限不同

     struct默认权限是公共 public

     class默认权限是私有 private

struct C1
{int a;
};
class  C2
{int a;
};
struct C1 c1;
c1.a=100;//在struct默认权限为公共,因此可以访问
C2 c2;
c2.a=100;//在class默认权限为私有,因此不能访问

2.将成员属性设置为私有

     优点1:将所有成员属性设置为私有,可以自己控制读写权限

     优点2:对于写权限,我们可以检测数据的有效性

#include<iostream>
using namespace std;
class Person
{//姓名设置可读可写void setName(string name){_name=name;}void getName(){return _name;}//年龄设置只读 int getAge(){return _age;}//偶像设置只写 外界无法访问void setIdol(string idol){_idol=idol;}
private:string _name;//可读可写int _age=18;//只读string _idol;//只写
};

3.对象的初始化和清理

     在生活中我们购买电子产品都会有出厂设置,我们如果不用了也要删除信息保证自己的隐私安全,C++的面向对象来源于生活,每个对象也会有初始化设置以及对象销毁前的清理数据的设置。

3.1 构造函数和析构函数

     一个对象或者变量没有初始状态,使用后果很未知,用完不进行清理。也有安全问题。C++利用构造函数析构函数解决问题,这两个函数被编译器自动调用,完成对象的初始化和清理工作。

如果我们自己不实现这两个操作,编译器会提供,但编译器提供的构造函数和析构函数是空实现

     构造函数:主要用于创建对象时为对象的成员属性赋值,构造函数由编译器自动调用,无需手动调用,当然也可以自己进行实现。

      析构函数:主要用于对象销毁前系统自动调用,执行清理工作

3.1.1 构造函数语法
类名(){}
1.构造函数没有返回值,不用写void2.函数名称与类名相同3.构造函数可以有参数,因此可能有重载4.程序在调用对象时会自动调用该函数,且只调用一次
3.1.2 析构函数语法
~类名(){}
1.构造函数没有返回值,不用写void2.函数名称与类名相同,在名称前加上~3.构造函数不可以有参数,因此不可能有重载4.程序在对象销毁前会自动调用该函数,且只调用一次
3.1.3 检验
#include<iostream>
using namespace std;
class Person
{
public://构造函数Person(){cout<<"Person 构造函数的调用"<<endl;}//析构函数~Person(){cout<<"Person 析构函数的调用"<<endl;}
}
int main()
{Person p;//在栈上的数据,之后释放该对象
}

     输出:

Person 构造函数的调用
Person 析构函数的调用

     可以发现,我们只是创建了一个对象,并没有实现函数,这肯定是构造函数和析构函数被系统自动调用了啊,这两个函数都是必须有的,如果我们自己不提供,编译器给你提供,但都是空实现。

3.2 构造函数的分类和调用

     分类

           按参数分为:含参构造和无参构造 无参构造又称为默认构造函数

           按类型分为:普通构造和拷贝构造

     调用

            括号法

            显示法

            隐式转换法

#include<iostream>
using namespace std;
class Person
{
public://构造函数 普通构造Person(){cout<<"Person 无参(默认)构造函数的调用"<<endl;}Person(int a){cout<<"Person 含参构造函数的调用"<<endl;}//拷贝构造函数Person(const Person &p){cout<<"拷贝构造函数的调用"<<endl;age=p.age//将传入对象上的所有属性,拷贝到另一个人身上}//析构函数~Person(){cout<<"析构函数的调用"<<endl;}
}  //调用
void test()
{//括号法Person p1;//默认构造函数的调用Person p2(10);//含参构造函数的调用Person p3(p2);//拷贝构造函数的调用//显示法Person p1;Person p2=Person(10);//Person(10)为匿名对象 特点:当前行命令执行结束后,系统会马上回收匿名对象Person p3=Person(p2);//不能利用拷贝构造函数来初始化匿名对象,编译器会认为Person(p3)===Person p3;导致重定义//隐式转换法Person p4=10;//相当于Person p4=Person(10);Person p5=p4;}
int main()
{test();
}

3.3 拷贝构造函数调用

     C++拷贝构造函数通常是这三种情况:

1.使用一个已经创建完的对象来初始化一个新对象
2.值传递的方式给函数参数传值
3.以值方式返回局部对象

     以上面的class为例

1.使用一个已经创建完的对象来初始化一个新对象

Person p1;
Person p2(p1);

 2.值传递的方式给函数参数传值

void doWork(Person p)
{}
void test()
{Person p;//调用默认构造函数doWork(p);//值传递 实参传给形参,调用拷贝构造函数
}

3.以值方式返回局部对象

Person doWork()//根据p1 创建出一个新对象返回 这肯定要调用拷贝构造函数
{Person p1; return p1;
}
void test()
{Person p=doWork();
}
http://www.tj-hxxt.cn/news/99146.html

相关文章:

  • 电子商务网站开发主要有哪些电子商务平台
  • 有什么网站可以做婚庆视频素材网站整站优化
  • 微信网站开发流程图seo推广教程视频
  • 东莞市行业网站制作公司最新今日头条
  • ps做网站横幅seo站内优化和站外优化
  • 做兼职的网站是不是真的企业培训机构有哪些
  • 平度好的建设网站网站外链推广平台
  • 企业建设营销型网站有哪些步骤友情链接吧
  • 爱做电影网站怎么关闭seo综合查询
  • 中山市两学一做网站品牌营销与推广
  • 企业网站建设联系电话最火网站排名
  • 网站改版换域名新手怎么引流推广
  • 庆阳网站建设代引流推广公司
  • 猪八戒网做网站怎么样免费建网站最新视频教程
  • 做暧在线观看网站西安网络优化大的公司
  • 如何设计一个企业网站重庆关键词seo排名
  • 1 建设好自媒体门户网站营销策划的概念
  • b s架构网站怎么做博客是哪个软件
  • 高端品牌网站建设东莞关键字排名优化
  • 网站建设费用组成苏州seo网站管理
  • 医院网站建设原理北京网站推广
  • 外贸网站seo教程网站建设黄页视频
  • 丽水专业网站建设价格西安优化外包
  • 建设网站主机要买什么的好怎么做网页设计的页面
  • 无锡公司网站制作天津seo推广服务
  • 网站开发 定价做一套二级域名网站怎么做
  • 新网站怎么做推广seo关键词优化价格
  • 设计网站横幅线下推广的渠道和方法
  • 建一个营销网站多少钱关键词排名优化易下拉技巧
  • 国外交互设计网站欣赏自媒体是什么