《Visual C++范例大全》
第一章:VC与C++开发基础
Visual C++作为一个功能非常强大的可视化应用程序开发工具,是计算机界公认的最优秀的开发工具之一。Microsoft的基本类库MFC使开发Windows应用程序变得非常容易。本章将通过具体事例简单介绍有关Visual C++开发的基础知识。
1.1:C++面向对象特性
Visual C++是Windows环境下最主要的C++开发环境,它支持面向对象编程,并提供可视化编程环境。要使用Visual C++进行程序开发,有必要了解面向对象的基本概念和掌握C++语言。
实例1:实现C++类的多重继承
本实例姜堰市多重继承的实现,定义了时间类CTimeType和日期类CDateType,分别可以显示和修改时间和日期。而后以这两个类为基类,派生日期时间类CDateTimeType。这样,在CDateTimeType类中,就同时具有了时间类和日期类的属性和方法。
基类CDateType的代码如下
#pragma once
#include <iostream>
using namespace std;
class CDateType {
public:
int year, month, day;
CDateType(int y = 2018, int m = 06, int d = 16) {
year = y;
month = m;
day = d;
}
void display() {
cout << year << "年" << month << "月" << day << "日" << endl;
}
void setDate(int y, int m, int d) {
year = y;
month = m;
day = d;
}
};
基类CTimeType的代码如下
#pragma once
#include <iostream>
using namespace std;
class CTimeType {
public:
int hour,minute,second;
CTimeType(int h=15, int m=07, int s=35) {
hour = h;
minute = m;
second = s;
}
void display() {
cout << hour << ":" << minute << ":" << second << endl;
}
void setTime(int h,int m,int s) {
hour = h;
minute = m;
second = s;
}
};
CDateTimeType类集成CDateType类和CTimeType类代码如下:
#pragma once
#include "CTimeType.h"
#include "CDateType.h"
class CDateTimeType:public CDateType,public CTimeType {
public:
CDateTimeType(int mon = 7, int d = 17, int y = 2019, int h = 16, int m = 06, int s = 57) :CDateType(y, mon, d), CTimeType(h, m, s) {}
void display() {
CDateType::display();
CTimeType::display();
}
};
主文件的代码如下
#include "pch.h"
#include <iostream>
#include "CDateTimeType.h"
int main()
{
cout << "类的多重继承演示" << endl;
CDateTimeType dt(2019, 7, 17, 16, 10);
cout << "调用CDateTimeType类的构造函数初始化日期、时间为:" << endl;
dt.display();
dt.setDate(2020, 8, 18);
dt.setTime(17, 13, 59);
cout << "调用基类成员函数修改后的日期、时间为:" << endl;
dt.display();
return 0;
}
运行结果:
实例2:使用虚函数实现运行时的多态
GitHub仓库地址:https://github.com/HalfFairyZhang/CPP_MFC_Example.git