面向对象 C和C++知识点大全

面向对象:

对象:就是具有某类事务相同特征的 (数据和操作数据的方法)的集合

面向对象(Object Oriented) Object Oriented Programming,简称OOP,是一种程序设计思想。把(对象)作为程序的基本单元,一个对象包含了(数据和操作数据的方法)例如People{name,age,sex,function getSex(){ }}是一个people对象 类的(实例化)就是对象
⑴对象。 :对象是某类事物 抽象出来后 数据和方法的结合体,类的(实例化)
在面向对象程序设计中,对象所指的是计算机系统中的某一个成分。对象包含两个含义,其中一个是**(数据),另外一个是(操作数据的方法)。对象则是数据和方法的结合体。
  它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
  ⑵对象的状态和行为。用
数据描述状态,用操作数据的方法**描述行为。
  对象具有属性,一个对象用数据值来描述它的属性。
  对象还有行为,用于改变对象的状态,对象及其操作就是对象的行为。
  对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中
⑴.抽象 把某类事物具有相同的特性 { (数据)和(操作数据的方法) }抽离出来,就是抽象
抽某类事务出具有相同特性 { 属性(数据元素)和行为(功能) } 的对象,形成类
抽象级别:抽象主要包括 过程抽象 和 数据抽象
⑶类。
  具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因此,对象的抽象是类,类的(实例化)就是对象,也可以说类的实例是对象(实例化一个对象),类实际上就是一种数据类型。

面向过程

把(计算机程序)视为一系列的命令集合,程序的基本单元,即一组函数的顺序执行


对类的概念


命令符:
* 取值运算符 & 寻址运算符 :: 域操作符(作用域操作符) -> 访问符号

  • int p = &x; 对p赋值 操作的是指针变量的值所对应的地址
  • :: 在类外部声明成员函数。void Point::Area(){};
    调用全局函数;
    表示引用成员函数变量及作用域,作用域成员运算符 例: System::Math::Sqrt() 相当于System.Math.Sqrt()

** :: //作用域 **
#include
using namespace std;
int avar=10; //全局变量avar
int main()
{
int avar=20; //局部变量avar
cout<<"avar is: "<<avar<<endl; // avar 访问局部变量
avar=25; //1 //修改局部变量
cout<<"avar is: "<<avar<<endl;
cout<<"avar is: "<<::avar<<endl; // ::ava 访问全局变量
::avar=30; //2 //修改全局变量
cout<<"avar is: "<<::avar<<endl;
return 0;
调用类的静态方法: 如:CDisplay::display(…)

** -> ** 访问符号 用于声明一个对象类型的指针 指向一个new 出来的这个对象
例:
Class Tv{
public int type;
public void changeVo(){} //对象就是类里面的变量
int math(void){
Tv *p = new Tv();
p->type = 0; //-> 访问符号
p ->changeVo()
}
}

int a=3; int &b=a; //b是a的引用(a引用了b),引用必经初始化,一旦初始化就不能改为指向其他对象
b = 10; 对b的操作也修改了a,对a的操作也修改了b。

  • boolalpha 便是Cout<<输出的布尔型true/false 而不是0/1
    count.width(n) n为整形,表示输出的数值的多少位
    位运算符
    在这里插入图片描述
    赋值运算符
    在这里插入图片描述
    杂项运算符
    在这里插入图片描述
    C++ 数学运算
    在这里插入图片描述
    C++ 数据类型
    在这里插入图片描述
    C++ 日期 & 时间
    有四个与时间相关的类型:clock_t、time_t、size_t 和 tm。类型 clock_t、size_t 和 time_t 能够把系统时间和日期表示为某种整数。
    结构类型 tm 把日期和时间以 C 结构的形式保存,tm 结构的定义如下:
    /* 输入日期判断是周几 /
    例1:
    #include ​<stdio.h> /
    printf, scanf /
    #include <time.h> /
    time_t, struct tm, time, mktime /
    int main ()
    {
    ​time_t rawtime;
    ​struct tm * timeinfo;
    ​int year, month ,day;
    ​const char * weekday[] = { “周日”, “周一”,“周二”, “周三”,“周四”, “周五”, “周六”};

    ​/
    用户输入日期 /
    ​printf (“年: “); fflush(stdout); scanf (”%d”,&year);
    ​printf (“月: “); fflush(stdout); scanf (”%d”,&month);
    ​printf (“日: “); fflush(stdout); scanf (”%d”,&day);

    ​/
    获取当前时间信息,并修改用户输入的输入信息 /
    ​time ( &rawtime );
    ​timeinfo = localtime ( &rawtime );
    ​timeinfo->tm_year = year - 1900;
    ​timeinfo->tm_mon = month - 1;
    ​timeinfo->tm_mday = day;

    ​/
    调用 mktime: timeinfo->tm_wday */
    ​mktime ( timeinfo );

    ​printf (“那一天是:%s\n”, weekday[timeinfo->tm_wday]);

    ​return 0;
    让我们编译并运行上面的程序,这将产生以下结果:
    年: 2018
    月: 7
    日: 26
    那一天是:周四

例2:
#include
#include /* time_t, struct tm, time, mktime */
using namespace std;
int main( )
{
// 基于当前系统的当前日期/时间
time_t now = time(0);

cout << “1970 到目前经过秒数:” << now << endl;

tm *ltm = localtime(&now);

// 输出 tm 结构的各个组成部分
cout << "年: "<< 1900 + ltm->tm_year << endl;
cout << "月: "<< 1 + ltm->tm_mon<< endl;
cout << "日: "<< ltm->tm_mday << endl;
cout << "时间: "<< ltm->tm_hour << “:”;
cout << ltm->tm_min << “:”;
cout << ltm->tm_sec << endl;
}
当上面的代码被编译和执行时,它会产生下列结果:

1970 到目前时间:1503564157
年: 2017
月: 8
日: 24
时间: 16:42:37

C++ 随机数
随机数生成器有两个相关的函数。一个是 rand(),该函数只返回一个伪随机数。生成随机数之前必须先调用 srand() 函数。
j= rand();
cout <<"随机数: " << j << endl;

**

整数常量

**
整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制0 表示八进制不带前缀则默认表示十进制

整数常量也可以带一个后缀,后缀是 U 和 L 的组合,U 表示无符号整数(unsigned),L 表示长整数(long)。后缀可以是大写,也可以是小写,U 和 L 的顺序任意。

头文件**#include **

头文件就是将别的文件里的代码插入到编程代码中的一种方式
iostream.h:用于控制台输入输出头文件。 //io stream的简写
fstream.h:用于文件操作的头文件。 //file stream的简写
complex.h:用于复数计算的头文件。
#include
#include //

命名空间 **using namespace std;**表示使用C++ 标准库

命名空间&#x

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值