面向对象编程:
•万物皆对象
•程序就是一组对象,对象之间通过发送消息互相通知做什么
•每一个对象都有它自己的由其他对象构成的存储区
•每一个对象有一个类型
•一个特定类型的所有对象都能接收相同的消息
类:
•类是用户定义的数据类型
•在类中声明的变量和函数称为类的成员
变量称为数据成员(也叫成员变量)
函数称为成员函数(有时称为方法)
•可以用类来声明变量(也称为实例)。每个实例是类的一个对象
•定义类的实例可以称为类的实例化
定义类:
•用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;
}