首页 > 代码库 > C++类的基本认识

C++类的基本认识

面向对象编程:

?万物皆对象
?程序就是一组对象,对象之间通过发送消息互相通知做什么
?每一个对象都有它自己的由其他对象构成的存储区
?每一个对象有一个类型
?一个特定类型的所有对象都能接收相同的消息


类:

?类是用户定义的数据类型
?在类中声明的变量和函数称为类的成员
     变量称为数据成员(也叫成员变量)
     函数称为成员函数(有时称为方法)
?可以用类来声明变量(也称为实例)。每个实例是类的一个对象
?定义类的实例可以称为类的实例化

定义类:

?用struct定义类
     成员默认为公开
?用class定义类
     成员默认为私有
?类中成员的作用域
     private
     protected
     public

构造并使用对象

?定义类Time并使用
     成员变量   时分秒
     成员函数  显示 滴答  …
?使用标准库中的类string构造对象
      =  += + > >= < <= == !=
     size()  length() find()  str[i] s.c_str(转换成c风格,返回char*)
     其他成员函数


//
//  main.cpp
//  ClassAndObject
//
//  Created by 06 on 15/1/17.
//  Copyright (c) 2015年 黄永锐. All rights reserved.
//

#include <iostream>
using namespace std;

//类
class Time{
    //默认是私有的
    int hour;
    int min;
    int sec;
    
    //
    void dida(){
        sec++;
        if (60 == sec) {
            sec = 0;
            min++;
        }
        
        if (60 == min) {
            min = 0;
            hour++;
        }
        
        if (24 == hour) {
            hour = 0;
        }
    }
    
    //
    void show(){
        cout << hour << "时" << min << "分" << sec << "秒" << endl;
    }
    
   
public:
    //公开的初始化方法
    void init(int h,int m,int s){
        hour = h;
        min = m;
        sec = s;
    }
    
  
    //
    void run(){
        while (1) {
            
            show();
            dida();
            //代表一个时间
            time_t cur = time(0);//0是获取当前系统的时间
            //注意理解
            while (cur == time(0)) {
                //死循环1秒钟
            }
        }
    }
    
    
 //C++中可以这样写
private:
public:
protected:
    
    
};

//主函数
int main(int argc, const char * argv[])
{

    //创建对象
    Time t;
    //t.hour;//默认是私有的在类外拿不到
    //t.show();//私有的
    
    /*
     应该开启一个线程 嘀嗒一下显示一下
    t.dida();
    t.show();
    
    t.dida();
    t.show();
    
    t.dida();
    t.show();
    
     */
 
    t.run(); 
    return 0;
}



C++类的基本认识