zoukankan      html  css  js  c++  java
  • (1) c++的面向对象 第一节

    c++的面向对象 第一节

    1. 类和对象

    C++是在c语言的基础上增加了面向对象编程部分的新语言(已经不新了),所以面向对象部分也是

    C++的重中之重


    1 . c++中的类

    定义:类用于指定对象的形式,它包含了数据表示法和用于处理数据的方法。类中的数据和方法

    称为类的成员。函数在一个类中被称为类的成员。

    个人理解类就是许多相似对象(等下会提到)的一个公用模板,对象则是具体化的类。

    就像百度百科的定义那样:类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内

    存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型

    的对象中的方法和变量的软件模板。

    下面是类的一个具体的例子

    class neme//类名{
    	public://访问修饰符
    		int a;//类中可调用的数据,被称为类的成员
    }
    

    我们可以看出,一个类是由

    类名,访问修饰符,和类的成员组成

    1类名: 类名故名思意,就是指类的名称,用来确定一个类,便于调用。

    2类的成员,由方法和数据构成,方法指一种特殊的函数,是定义在类中的函数,可以调用对象的数据。

    3访问修饰符 : 数据封装是面向对象编程的一个重要特点,它防止函数直接访问类类型的内部成

    员。类成员的访问限制是通过在类主体内部对各个区域标记 public、private、protected 来指定

    的。关键字 public、private、protected 称为访问修饰符。我们对这三种访问修饰符进行一 一介绍

    (1) public 公有成员

    首先来看public ,它代表的意义是公有成员,而公有成员在程序中类的外部是可以别访问的,不需要成

    员函数去获得公有变量的值(在类中定义在共有区域的变量被称为共有变量)也就是说,我们可以不受限

    制的去调用共有成员,举个例子把。

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<string>
    
    using namespace std;
    class name{
    	public:
    		int a;
    };
    int main(){
    	name fi;//定义
    	fi.a=1;//因为a是公有成员,我们才能做到直接访问修改
    	cout<<fi.a;
    	return 0;
    } 
    

    这就完成了一次简单的调用

    (2) private 私有成员

    定义:私有成员变量或函数在类的外部是不可访问的,甚至是不可查看的。只有类和友元函数可以访问私有

    成员。默认情况下,类的所有成员都是私有的。例如在下面的类中,width 是一个私有成员,这意味

    着,如果您没有使用任何访问修饰符,类的成员将被假定为私有成员:

    正如定义所说,私有成员和公有成员区别在于调用,我们只能通过同一个类中的public成员或者是友元

    (以后会提到)来对private进行调用,注意只能是同一个类中的public 调用该类中的private

    举个例子

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<string>
    
    using namespace std;
    class name{
    	private: int len;//定义一个私有成员
    	public:
    		void change(){
    			len=1;
    		}
    		void write(){
    			cout<<len;
    		}
    };
    int main(){
    	name fi; 
        //fi.len=1; 像这样直接调用private会报错。
    	fi.change();//调用public来对其更改
    	fi.write();//输出
    	return 0;
    } 
    

    (3) protected 受保护成员

    定义:protected(受保护)成员变量或函数与私有成员十分相似,但有一点不同,protected(受保

    护)成员在派生类(即子类)中是可访问的。

    由于涉及到了派生类和继承,所以在这里不过多介绍,以后会更详细的进行介绍。大致理解成可以在

    子类中调用的private即可

    注意同一类中,private也是可以访问public的

    我们可以发现,struct 的使用和class非常相似,没错,struct正是全是public的简单类

    2 . 对象

    这个对象可不是找的那个对象,(整日面向对象编程却没有对象,可怜) 指类的一个具体实现

    其实在上面针对类的使用过程中我们已经用到了对象,例如

    name fi;
    

    name 是我们定义的类名,fi 则是定义的对象,fi拥有了类的特称,即类中的成员。正是在类的基础上

    我们才可以定义一个具体的对象

    本节内容到此就结束了,以后大概会一周一更吧。

  • 相关阅读:
    opencv行列式按行(列)展开
    线性方程组
    opencvVideoCapture视频和摄像头读写
    浅谈测试的成就感
    关于软件测试职业规划的讨论 .
    多进程,多线程,就是这么回事儿
    测试计划的制定
    写给测试新手 .
    测试最需要的是淡定
    用一个比喻说明项目里各个成员的角色
  • 原文地址:https://www.cnblogs.com/rpup/p/14162204.html
Copyright © 2011-2022 走看看