C++候捷课程笔记与补充(学习至02头文件与类的声明)
2021/9/22 20:44:31
本文主要是介绍C++候捷课程笔记与补充(学习至02头文件与类的声明),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、 c++编程简介
你需要的基础:
变量(variables)
类型(types):int,float,char,struct
作用域(scope)
循环(loops):while,for
流程控制:if-else,switch-case
我们的目标:
在C++中,我们通过定义一个类(class)来定义自己的数据结构。一个类定义了一个类型,以及与其关联的一组操作。
C++中每一个单元就是class,其中class的经典分类:带有指针的和不带指针的。
对于单一的class的设计叫做Object Based(基于对象)。
对于多个class且之间classes具有关联就可以叫做Object Oriented(面向对象)。
2.头文件与类的声明
在C语言中,会准备数据和函数(用于处理数据),缺点是由于语言没有提供足够的关键字,数据是全局的。
在C++中,把数据和处理数据的函数包在一起作为class,这个数据只有这个函数可以处理它。class其实是C中的struct结构,只不过C++提供了更多关键字,具有了更多的特性。以class为类型创建出对象来使用。
经典的两个class分类:
一个不带有指针的:例如complex
复数具有实部和虚部,在内存中占用也具有实部和虚部,同时也要设计复数的处理函数,数据有很多份,但是函数只有一份。
一个带有指针的:例如string
字符串其实是一根指针,指向了另外放了我们需要的内容。
C++程序代码的基本形式:
头文件
主程序:主程序通过include方式引用头文件/标准库(标准库用< >,自己写的用“ ”)
标准库:以头文件形式存在
C++的输出:
<< 就像把东西往左边丢到c out
头文件中防卫式声明:要写一个防卫式声明(guard),先定义一个新名称。#ifndef是一条预处理指令,用于判断给定的变量是否尚未定义。#define是一条预处理指令,用于定义一个预处理变量。#endif是一条预处理指令,用于结束一个#ifdef或#ifndef区域。
头文件的布局:
内容0首先前置声明
内容1中写你要写的复数的声明
内容2写定义
class的声明:
在body部分需要设计复数需要什么数据和函数才能满足需求。
class template(模板)简介:
在复数中决定了实部虚部是一个double类型,若另外一个复数的类型是整数或者浮点数,此时只好再写一个class,在C++中就导入了一个模板。如果实参的类型不同,我们可以编写一种特殊的函数,也就是所谓的可变参数模板。用template< typename T>来告诉编译器T是一种未定的类型。在使用中用complex<>尖括号中来定义类型。
这篇关于C++候捷课程笔记与补充(学习至02头文件与类的声明)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-12深入理解 ECMAScript 2024 新特性:Map.groupBy() 分组操作
- 2025-01-11国产医疗级心电ECG采集处理模块
- 2025-01-10Rakuten 乐天积分系统从 Cassandra 到 TiDB 的选型与实战
- 2025-01-09CMS内容管理系统是什么?如何选择适合你的平台?
- 2025-01-08CCPM如何缩短项目周期并降低风险?
- 2025-01-08Omnivore 替代品 Readeck 安装与使用教程
- 2025-01-07Cursor 收费太贵?3分钟教你接入超低价 DeepSeek-V3,代码质量逼近 Claude 3.5
- 2025-01-06PingCAP 连续两年入选 Gartner 云数据库管理系统魔力象限“荣誉提及”
- 2025-01-05Easysearch 可搜索快照功能,看这篇就够了
- 2025-01-04BOT+EPC模式在基础设施项目中的应用与优势