构造函数
目的是初始化类的变量
在类中不能初始化变量,因此就出现了构造函数
// salary.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include<iostream.h>
class mysalary        //定义薪水类
{
public:
 mysalary(int id,double salary)    //构造函数,用于设置员工编号和薪水
 {
  this->id=id;
  this->salary=salary;
 }
 void salaryraise(double i)     //成员函数,用于调整薪水
 {
  salary=salary+salary*i;
 }
 void printsalary()
 {
  cout<<"员工编号:"<<id<<"员工薪水:"<<salary<<endl;
 }
private:
 int    id;        //员工编号
 double salary;       //员工薪水
};
void main(void)
{
 mysalary s1(1001,1000);
 s1.printsalary();
 s1.salary=2000;
 s1.printsalary();
 cout<<"涨薪水了10%后:"<<endl;
 s1.salaryraise(0.1);      //薪水调高10%
 s1.printsalary();
}
// Books.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream.h> 
#include<string.h> 
class Books          //定义一个图书类
public: 
    Books(char *Name,char *Publisher)   //构造函数
    { 
        strcpy(bookname,Name); 
        strcpy(publisher,Publisher); 
    cout<<"您已经购买了图书:"<<bookname<<"--"<<publisher<<endl;
        bookcount++; 
    } 
 static void dispaly()      //静态成员函数 
    { 
        cout<<"图书总册数:"<<bookcount<<endl; 
    } 
private: 
    char bookname[50];      //定义成员变量,表示图书名
    char publisher[50];      //定义成员变量,表示图书出版社
   
static int bookcount=0;       //定义静态成员变量,表示图书总数   这里是编译会出错哦
}; 
    //静态成员初始化 
 
static int bookcount=0;     //放这里就行了,也就是说在类的定义里不能初始化变量
void main(void) 
 Books::dispaly();      //静态成员函数的调用
     Books b1("C++项目开发实录","人民教育出版社");
     Books b2("C++面向对象编程","电子工业出版社");
 Books::dispaly();      //静态成员函数的调用
     Books b3("数据结构","电子工业出版社"); 
 Books::dispaly();
}