#include<iostream.h>
//定义一个动物类
class Animal
{
public:
void eat();//添加方法
{
cout<<"animal eat"<<endl;
}
void sleep();//添加方法
{
cout<<"animal sleep"<<endl;
}
void breathe();//添加方法
{
cout<<"animal breathe"<<endl;
}
};
//定义一个鱼的类

class fish
{
public:
void eat();//添加方法
{

}
void sleep();//添加方法
{

}
void breathe();//添加方法
{

}
};

如果还想定义一个猫,狗,羊......一个一个类的去定义太麻烦了

//用继承的办法来定义一个鱼的类
//那么Animal类有的方法,fish就会继承
class fish :public Animal
{

};

//fish 调用sleep方法
void main()
{
Animal an;
fish fh;
fh.sleep();
}

类的继承,父类(基类),子类(派生类)

有三种继承的方式,public,private (在内部也不能被访问,否则,编译会出错,如下图,把breathe这个方法定义为了私有,那么,在fish中是不能访问来调用这个方法的),protected(对其子类来说,在内部可以访问的)

#include<iostream.h>
//定义一个动物类
class Animal
{
public:
Animal()
{
cout<<"animal construct"<<endl;
}
void eat()//添加方法
{
cout<<"animal eat"<<endl;
}
void sleep()//添加方法
{
cout<<"animal sleep"<<endl;
}
void breathe()//添加方法
{
cout<<"animal breathe"<<endl;
}
};
//用继承的办法来定义一个鱼的类
//那么Animal类有的方法,fish就会继承
class fish :public Animal
{
public:
fish()
{
cout<<"fish construct"<<endl;
}
};

//fish 调用sleep方法
void main()
{
Animal an;
fish fh;
fh.sleep();
}

(在构造过程中是基类先构造)

若定义一个析构函数来调用,是鱼先析构,Animal后析构(析构先子类后父类)

vc++如何创建程序-构造和继承的更多相关文章

  1. vc++如何创建程序01

    1 .选择文件+新建(ctrl+N),然后选择一个空的工程,完成 2 然后在选择file新建,在files文件下面选择一个C++Source File,并取个文件名(比如为point可以不带.c) 我 ...

  2. vc++如何创建程序-设置断点-函数的覆盖,c++的多态性

    ---恢复内容开始--- 如何设置断点小笔记 将光标移动到你想设置断点的地方,按一下F9键即可,或者你可以用鼠标左键点击小手图标. CommentOut多行注释 函数的覆盖是在父类与子类之间的,函数的 ...

  3. vc++如何创建程序-构造函数

    如果给Animal带参,则提示没有缺省的构造函数了,缺省就是不带参数的 改进:从子类当中向基类传递代参的,这样他就会给Animal传递400,300 对一个常量来调用 #include<iost ...

  4. vc++如何创建程序-析构函数01

    #include<iostream.h>class Point{public: int x; int y; Point() { x=0; y=0; }//构造函数是用来创建函数本身,那么, ...

  5. vc++如何创建程序--利用快捷键进行多行注释

    Eclipse同时注释多行①:ctrl+/或 ②:ctrl+shift+/ : Visual studio先按ctrl+k 再按 ctrl+c 2.在VC++6.0中需要自己设置快捷键,设置方法链接如 ...

  6. vc++如何创建程序-函数的重载

    重载构成的条件:函数的参数类型,参数个数不同,才能构成函数的重载 函数重载分为两种情况: 1 .(1)void output(); (2)int output(); 2 .(1)void output ...

  7. vc++如何创建程序-构造函数02

    1.若忘记了赋值,出现运行结果是很大的负值(因为我们定义的x与y这两个成员变量存储在内存中是一个随机的值) 当我们调用时,随机输出. //包含输入输出的头文件#include<iostream. ...

  8. 用VC制作应用程序启动画面

    摘 要:本文提供了四种启动画面制作方法. 使用启动画面一是可以减少等待程序加载过程中的枯燥感(尤其是一些大型程序):二是 可以用来显示软件名称和版权等提示信息.怎样使用VC++制作应用程序的启动画面呢 ...

  9. [Windows][VC]开机自动启动程序的几种方法

    原文:[Windows][VC]开机自动启动程序的几种方法 很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动项目,而是直接能够启动运行,方法是写注册表Software\\Microsof ...

随机推荐

  1. 使用阿里云对象存储OSS上传图片工具类

    package com.verse.hades.utils; import com.aliyun.oss.OSSClient; import com.aliyun.oss.common.auth.Cr ...

  2. git常见问题总结

    1.每次上传文件的时候,有很多iml文件容易不小心上传上去,然后报错,所以可以把这些文件取消上传 如图所示,每次提交时,都不会显示标红文件 具体操作步骤如下:

  3. Spring MVC-页面重定向示例(转载实践)

    以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_page_redirection.htm 说明:示例基于Spring MVC 4. ...

  4. Linux用户管理之使用/bin/false和/usr/sbin/nologin拒绝用户登录及其功能分析(转)

    /bin/nologin,/bin/false的意思是禁止某个用户登录. 比较常用的用法: #添加一个不能登录的用户 useradd -d /usr/local/apache -g apache -s ...

  5. Internal Temporary Tables

    8.4.4 How MySQL Uses Internal Temporary Tables 这是MySQL手册中的一节,尝试补充了一些解释.用的版本是MySQL5.6.15社区版 In some c ...

  6. POJ 1379

    模拟退火算法. 随机MAX个点,然后,退火移动,选取距离所有点中最短中最长者即可.理解和我上一篇一样. #include <iostream> #include <cstdio> ...

  7. POJ 2607

    一次FLOYD,再枚举. 注意题目要求的输出是什么哦. #include <iostream> #include <cstdio> #include <cstring&g ...

  8. Python3 pymysql连接MySQL数据库

    #!/usr/bin/python # -*- coding:utf8 -*- import pymysql #取得数据库连接对象 conn = pymysql.connect(host='127.0 ...

  9. Android学习笔记(8):ViewGroup类

    A ViewGroup is a special view that can contain other views (called children.) The view group is the  ...

  10. PowerDesigner里面将表中name列值拷贝到comment列

    完整版见https://jadyer.github.io/2015/06/03/powerdesigner-copy-name-to-comment/ /** * PowerDesigner里面将表中 ...