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

做系统 和网站前端搜索引擎营销方案

做系统 和网站前端,搜索引擎营销方案,手机版网站如何做,网站关键词搜索排名一.类与对象的思想 1.1面向对象的特点 封装、继承、多态 1.2类的概念 创建对象的过程也叫类的实例化。每个对象都是类的一个具体实例(Instance),拥有类的成员变量和成员函数。由{ }包围,由;结束。 class name{ //类的…

一.类与对象的思想

1.1面向对象的特点

封装、继承、多态

1.2类的概念

创建对象的过程也叫类的实例化每个对象都是类的一个具体实例Instance),拥有类的成员变量和成员函数。由{ }包围,由;结束。

class name{
//类的成员(类体)=成员变量(类的属性)+成员函数(类的方法)
}

关键字 class

以下是一个简单类的定义: 

class person{//类person
public://成员变量:char *name;int age;double height;//成员函数:void say(){cout<<name<<"的年龄是"<<age<<"身高是"<<height<<endl;}//声明成员函数的同时,也定义成员函数};

注:

  • (1)类是一种构造类型类的定义由一个分号结束,不能省略(它是类的一部分)。
  • (2)一个类可以创建多个对象,每个对象都是类类型的一个变量
  • (3)类成员变量的访问方法:通过  . 或者 ->来访问
  • (4)成员函数是类的一个成员,出现在类中,作用范围由类来决定,而普通函数是独立的,作用范围是全局或者某个命名空间。

区别【类】与【结构体】:

  • struct :内部默认是共有权限,结构体外部可以访问其内部成员
  • class:内部默认是私有权限,类的外部不能直接访问内部成员;可以手动声明为共有权限;

 1.3类的成员变量与成员函数

类,这种数据类型是一个包含成员变量和成员函数的集合。

类的成员变量,和普通变量一样,也有数据类型和名称,占用固定长度的内存。

但是,在定义类的时候不能对成员变量赋值,因为类只是一种数据类型或者说是一种模板,本身不占用内存空间,而变量的值则需要内存来存储。

类的成员函数,也和普通函数一样,都有返回值和参数列表。

成员函数与普通函数的区别是:

  • 成员函数是一个类的成员,出现在类体中,它的作用范围由类来决定;
  • 而普通函数是独立的,作用范围是全局的,或位于某个命名空间内。

成员函数可以在声明时定义,也可以在类中声明 在类外定义,这时需要域解析符::

    class Student{public://成员变量char *name;int age;float score;//成员函数void say();  //函数声明};//函数定义void Student::say(){cout<<name<<"的年龄是"<<age<<",成绩是"<<score<<endl;}

在类体中直接定义函数时,不需要在函数名前面加上类名,因为函数属于哪一个类是不言而喻的。

但当成员函数定义在类外时,就必须在函数名前面加上类名予以限定。::被称为域解析符(也称作用域运算符或作用域限定符),用来连接类名和函数名,指明当前函数属于哪个类。

成员函数必须先在类体中作原型声明,然后在类外定义,也就是说类体的位置应在函数定义之前。

1.4对象的创建与访问

(1)对象的创建

将person看作新的数据类型,用类名构造对象

类名  对象名

person LiHua

class person LiHua//也可以

构造对象数组:

person student【100】

构造对象指针:

person stu;

person  * pstu=&stu;

创建的对象 stu 在栈上分配内存,需要使用&获取它的地址。

pstu 是一个指针,它指向 Student 类型的数据,也就是通过 Student 创建出来的对象。

也可以在堆上创建对象,这时需要使用new关键字:

person  *pstu =new stu;

使用 new 在堆上创建出来的对象是匿名的,没法直接使用,必须要用一个指针指向它,再借助指针来访问它的成员变量或成员函数。
栈内存是程序自动管理的,不能使用 delete 删除在栈上创建的对象;堆内存由程序员管理,对象使用完毕后可以通过 delete 删除。在实际开发中,new 和 delete 往往成对出现,以保证及时删除不再使用的对象,防止无用内存堆积。

(2)对象的访问

一般的对象可以使用点号.来访问成员变量和成员函数(这和通过结构体变量来访问它的成员类似)

    person stu;stu.name = "小明";stu.age = 15;stu.height = 1.65;stu.say();

对象指针,可以通过箭头->来访问对象的成员变量和成员函数,(这和通过结构体指针来访问它的成员类似)。

person *pstu=&stu;
pstu -> name = "小明";
pstu -> age = 15;
pstu -> height = 1.66;
pstu -> say();

 1.5类成员的访问权限

将类内分为公共权限(public)保护权限(protected)私有权限(private)

public 公共权限:类内可以访问,类外也可以访问

protected 保护权限:类内可以访问,类外不能访问

private 私有权限:类内可以访问,类外不能访问

class T{
private:int a;void f1(){}
protected:int b;void f2(){}
public:int c;void f3(){}
};int main(){T t;//创造对象t.c=3;t.f3();//私有成员无法通过外部访问//t.a=1;错误//t.f1(){ };错误//t.b=2;错误return 0;
}

注:

  • 1. public修饰的成员在类外可以直接被访问
  • 2. protected 和 private 修饰的成员在类外不能直接被访问 (此处protected和private是类似的)
  • 3. 访问权限作用域从该访问限定符出现的位置开始直到下一个访问限定符出现时为止
  • 4. 如果后面没有访问限定符,作用域就到 } 即类结束
  • 5. class的默认访问权限为 private,struct 为 public(因为struct要兼容C)
#include <iostream>
using namespace std;
//类的声明:
class Student{
private:  //私有的char *m_name;
public:  //共有的void setname(char *name);void show();
};
//成员函数的定义
void Student::setname(char *name){m_name = name;
}
void Student::show(){cout<<"名字是"<<m_name<<endl;
}int main(){//在栈上创建对象:Student stu;//stu.m_name="小明“错误,私有成员变量不能在类外部通过对象访问stu.setname("小明");stu.show();//在堆上创建对象:Student *pstu = new Student;pstu -> setname("李华");pstu -> show();return 0;
}

给成员变量赋值的函数通常称为 set 函数,它们的名字通常以set开头,后跟成员变量的名字;

读取成员变量的值的函数通常称为 get 函数,它们的名字通常以get开头,后跟成员变量的名字。

二. 构造函数

2.1构造函数的定义

在C++中,有一种特殊的成员函数(即:构造函数 Constructor),构造函数的名字和类名相同,没有返回值,不需要用户显式调用(用户也不能调用),而是在创建对象时自动执行。

构造函数:

  • 1.函数名必须和类名称相同。
  • 2.不能有返回值,也不能返回void,函数体不能有return语句。
  • 3.它的作用是给 属性的成员变量赋值
  • 4.构造函数必须是 public 属性的,否则创建对象时无法调用。
  • 5.构造函数在定义对象时会自动调用,不需要手动调用。  (要想调用该构造函数,就得在创建对象的同时传递实参,并且实参由( )包围,和普通的函数调用非常类似。)
#include <iostream>
using namespace std;
class Student{
private:char *m_name;int m_age;float m_score;
public://声明构造函数Student(char *name, int age, float score);//声明普通成员函数void show();
};
//定义构造函数
Student::Student(char *name, int age, float score){m_name = name;m_age = age;m_score = score;
}
//定义普通成员函数
void Student::show(){cout<<m_name<<"的年龄是"<<m_age<<",成绩是"<<m_score<<endl;
}
int main(){//创建对象时向构造函数传参Student stu("小狼", 16, 96.5f);stu.show();//创建对象时向构造函数传参Student *pstu = new Student("sakura", 15, 97);pstu -> show();return 0;
}

2.2构造函数的重载

http://www.jinmujx.cn/news/111466.html

相关文章:

  • 咖啡网站建设的优势网络营销的含义是什么
  • 衡水网站建设知识营销培训课程有哪些
  • 视频直播网站怎么做百度收录站长工具
  • 曰本真人性做爰视网站四大营销策略
  • html5 wap网站模板动画win7系统优化软件
  • 公司网站.可以自己做吗搜索引擎营销是什么意思
  • 合肥网站建设培训学校哈尔滨优化网站方法
  • 最低价网站建设今天特大新闻
  • 罗湖网站 建设深圳信科合肥关键词排名技巧
  • 用狗做头像的网站b2b网站大全
  • 凡科 预约网站直通车关键词怎么优化
  • 我要素材网网页设计素材班级优化大师下载
  • 易语言 网站开发网站建设开发简介
  • 网站主机选择与优化百度seo关键词排名价格
  • 张家口北京网站建设免费域名
  • 北京网站建设网站改版的费用南京响应式网站建设
  • 徐州网站制作如何定位网络推广收费价目表
  • 金华网站建设公司博客优化网站seo怎么写
  • 做网站的关键技术推广引流方法与渠道
  • 古镇企业网站建设定制最近国家新闻
  • 网站开发培训 从0青岛关键词搜索排名
  • 网站ar怎么做有哪些营销推广方式
  • 国内做网站建设知名的公司安徽网站设计
  • 共和网站建设公司宁波如何做seo排名优化
  • c2c网站页面设计特点私域营销
  • 广东疫情动态人民日报seo优化排名易下拉效率
  • 中国建材网官方网站百度搜索引擎官网入口
  • 个人域名备案 网站名称厦门seo网站管理
  • 推广业务网站建设怎么自己注册网站平台了
  • 购买的网站如何换背景怎么弄属于自己的网站