2021/01/14 C++程序设计学习 1-5课时

来源:网易云课堂 面向对象程序设计-C++——翁恺

课时1——第一个C++程序

在这里插入图片描述

Cygwin

  • 编辑器:
    -PS Pad:www.papad.com
    -Joe:终端中的简单编辑器
    -Notepad:将程序保存为“所有文件”
  • 源文件可能是.cpp·
  • 命令行编译器:
    -g++<源名称>
    - 生成a.out或a.exe
    -g++<源名称> -o<输出名称

输入输出符号

cout<< //输出 
cin>> //输入

文本替换->refactor->Rename

读取输入

#include <iostream> 
using namespace std; 
int main() { 
 int number; 
 cout << "Enter a decimal number: "; 
 cin >> number; 
 cout << "The number you entered is " << number <<"." << endl; 
 return 0;
}

课时2——什么是对象

什么是对象?

  • 对象 = 实体
  • 对象可以是
    -可见的或
    -不可见的
  • 对象在编程语言中是可变的。

属性 = 对象 + 服务

  • 数据:属性或状态
  • 操作:函数

描述/绘制

  • 从问题空间到解决空间

在这里插入图片描述

程序性语言

  • C不支持关系btw数据和函数
typedef struct point3d {
 float x;
 float y;
 float z;
} Point3d;
void Point3d_print(const Point3d* pd);
Point3d a;
a.x = 1; a.y = 2; a.z=3;
Point3d_print(&a);

C++ version

class Point3d {
public:
 Point3d(float x,float y,float z);
 print();
private:
 float x;
 float y;
 float z;
} ;
Point3d a(1,2,3);
a.print();

C vs. C++

在这里插入图片描述

什么是面向对象

  • 一种组织
    • 设计
    • 实现
  • 对象的方法,而不是控制或数据流,是设计和实现的主要重点
  • 专注于事情,而不是业务

课时3——面向对象基本原理

面向对象编程

  • 对象发送和接收消息(对象做事情! )
    在这里插入图片描述

对象发送消息

  • 消息是
    • 由发送者组成
    • 由接收方解释
    • 由方法论实现
  • 消息
    • 可能导致接受方更改状态
    • 可能返回结果

对象与类

  • 对象(cat)
    • 表示事物、事件或概念
    • 在运行时响应消息
  • 类(cat class)
    • 定义实例的属性
    • 类似于C中的类型
      在这里插入图片描述

OOP特性

  1. 一切都是对象
  2. 程序是一堆通过发送消息告诉对方该怎么做的对象
  3. 每个对象都有自己的内存由其他对象组成
  4. 每个对象都有一个类型
  5. 特定类型的所有对象都可以接收相同的消息

对象有一个接口

  • 接口是它接收消息的方式
  • 它是在对象所属的类中定义的
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

函数的接口

  • 通信
  • 保护

隐藏实现

  • 对象的内部部分,表示其状态的数据成员以及消息隐藏时所采取的操作
  • class creators VS Client programmers
    -客户程序员-Keep客户程序员的手,他们不应该触摸的部分
    -允许类创建者改变类的内部工作,而不必担心它将如何影响客户端程序员

封装

  • 捆绑数据和方法一起处理这些数据在一个对象
  • 隐藏数据的细节和操作
  • 只限制对已公布的方法的访问

课时4 自动售票机例子

  1. 命名规范:类的名字每个单词第一个字母大写。
::resolver(解析符)
<Class Name>::<function name> 代表某一个类中的某一个函数。
::<function name> 代表全局的一个函数

课时5 头文件

declared in a header file;
defined in a function file;
头文件include,是编译预处理。把include包含的文件与cpp中的文件结合在一起,合成一个大的文件。
#include“” 是在当前目录找头文件
#include<>是在系统目录找头文件;

而头文件中标准的
#ifndef
#endif
格式是为了避免同一个.cpp文件重复载入一个.h多次

xx.h–>declaration
xx.c–>definition
一般一个.c对应一个.h(同名)
还有main.h做为主函数入口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
原名《Turbo C/C++ for Windows 集成实验与学习环境》,现在已全面支持最新操作系统VISTA,它是从事一线教学的大学教师根据C/C++ 初学者的特点,量身定制的一个简单易用的 C/C++程序设计学习与实验软件(支持TC2/TC3、GCC、VC6四种编译器,没有使用日期限制)。与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,新增读书笔记功能有利用户 记录教程中的重点、难点、学习心得体会,针对用户学习教程中遇到的问题开通了疑难问题解答论坛等,同时,为了便于C语言学习,加入C语言学习指导、入门程序实例、典型源程序、典型的函数算法,课程设计指导、课程设计程序、 Visual C++6.0中英文编译错误信息同步显示功能(并配有60多种同步的语法错误程序实例、修改方法等)、 Turbo C2.0 中英文编译错误信息同步显示功能、Turbo C++3.0常见编译错误信息、C语言专业词汇的中英文对照、二级 C 语言的真题笔试试卷及答案与分析和上机模拟试题和详尽的答案与分析等大量的学习资源。另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值