1、如何新建工程
Vb2010中Win32控制台应用—新建c++文件(vs 源文件-添加—新建项—C++)
2、关于cin,cout
Std作用:
Vb6中#include<iostream.h>有cin,out的相关函数,不需要使用命名空间了。
而第二种标准#include<iostream>,它包含了一个类(std输入输出标准),在类的使用之前要预处理一下,using namespace std;
假设你不使用预处理(using namespace std;),麻烦加上std::cin或者std::cout再去使用它的成员函数(头文件中存在这个类)
Cin>>m作用,等待输入,不然窗口很快就没了
3、c++中结构体可以定义函数,c呢
Struct与class区别
相同:结构体struct是一种特殊的类class
不同:struct-public对外都是可以访问,class-默认private 对外no
4、类class,构造和析构、重载与继承、函数覆盖
对象: 具体某一个。
格式:类名 对象名
构造函数:
对类中的成员变量初始化
当你声明一个类对象时自动调用
每一个类必有一个构造函数。
用户没定义的话,就默认为无参数,只创建不初始化
函数名是类名
可以有参数,或没参数,无返回值(void也不行)
可以有多个此函数(函数重载)
析构函数:
函数运行完,或者由delete释放,自动调用,释放类成员的内存。
每个类只一个
在构造函数前面加~
无参数,无返回值,一个类只能有一个
函数的重载
函数的参数类型、参数个数不同,才能构成函数的重载。
Eg:不能构成函数的重载。函数在调用阶段是无法确定调用那个的
第一种情况:(1)void output();
(2)int output();
第二种情况:(1)void output(int a,int b=5);
(2)void output(int a);
继承
格式:Class 派生类名:继承方式 基类名
访问规则:子类可以访问父类public,protect方法。
子类构造函数与父类 均无参数
构造函数:当要创建子类对象时,先调用父类创建函数,在返回
函数运行结束:先调用子类析构,再父类析构
父类有参数,子类怎么办
构造函数加上参数
Eg:fish():animal(10,20)
{
cout<<"fish construct"<<endl;
}
函数覆盖:
父类和子类间 函数重载,会调用子类的(和构造函数不同)
子类内部,也是现有父类内存,再子类
输出是animal中breath方法呢,还是fish??前者
多态性
当C++编译器在编译的时候,发现Animal类的breathe()函数是虚函数,这个时候C++就会采用迟绑定(late binding)的技术
在基类函数前加virtual,子类有的调用子类
子类无调用父类
纯虚函数 virtual voidbreath()=0;
为了便于派生类,不具体实现。
类外调用函数 ::,引用“” <>
void animal::eat()
#include ”animal.h” 首先在当前目录查找,再系统目录
#include <animal.h> 直接系统目录