随笔分类 -  C++学习

最近我在看The C++ Programming Language(中文版)很有感触,其实 C语言只是C++的一个子集,另外,C++的核心在于它深刻的思想,C++的标准是一个十分有用的编程武器,而很多网络教程却很少涉及。
摘要:**示例:**设计一个学生类,属性有姓名和学号,可以给姓名和学号赋值,可以显示学生的姓名和学号 示例代码: //学生类 class Student { public: void setName(string name) { m_name = name; } void setID(int id) { 阅读全文
posted @ 2020-08-29 23:54 flyingswallow 阅读(1338) 评论(0) 推荐(0)
摘要:类和对象 C++面向对象的三大特性:封装、继承、多态 C++认为万事万物皆为对象,对象上有其属性和行为 例如: ​ 人可以作为对象,属性有姓名、年龄、身高、体重...,行为有走、跑、跳、吃饭、唱歌... ​ 车也可以作为对象,属性有轮胎、方向盘、车灯...,行为有载人、放音乐、放空调... ​ 具有 阅读全文
posted @ 2020-08-29 02:52 flyingswallow 阅读(195) 评论(0) 推荐(0)
摘要:函数重载注意事项 1.引用作为重载条件 2.函数重载碰到默认参数 示例: //函数重载注意事项 //1、引用作为重载条件 #include <iostream> using namespace std; void func(int &a) { cout << "func (int &a) 调用 " 阅读全文
posted @ 2020-08-27 21:35 flyingswallow 阅读(159) 评论(0) 推荐(0)
摘要:函数重载 作用: 函数名可以相同,提高复用性 函数重载满足条件: 1.同一个作用域下 2.函数名称相同 3.函数参数类型不同 或者个数不同 或者顺序不同 注意: 函数的返回值不可以作为函数重载的条件 示例: //函数重载需要函数都在同一个作用域下 void func() { cout << "fun 阅读全文
posted @ 2020-08-27 21:31 flyingswallow 阅读(132) 评论(0) 推荐(0)
摘要:占位参数 1.C++函数的形参列表里可以有占位参数,用来做占位,调用函数时必须填补该位置 语法: 返回值类型 函数名(数据类型){} 示例:: //函数占位参数 ,占位参数也可以有默认参数 void func(int a, int) { cout << "this is func" << endl; 阅读全文
posted @ 2020-08-26 09:56 flyingswallow 阅读(1088) 评论(0) 推荐(0)
摘要:函数默认参数 1.在c++中,函数的形参列表中的形参是可以有默认参数的 2.语法 返回值类型 函数名 (参数=默认值){} 示例: int func(int a, int b = 10, int c = 10) { return a + b + c; } //1. 如果某个位置参数有默认值,那么从这 阅读全文
posted @ 2020-08-25 02:35 flyingswallow 阅读(219) 评论(0) 推荐(0)
摘要:常量引用 作用: 常量引用主要用来修饰形参,防止误操作 在函数形参列表中,可以加const修饰形参,防止形参改变实参 示例: //引用使用的场景,通常用来修饰形参 void showValue(const int& v){ //v+=10; cout<<v<<endl; } int main(voi 阅读全文
posted @ 2020-08-25 02:31 flyingswallow 阅读(86) 评论(0) 推荐(0)
摘要:引用的本质 本质:引用的本质在c++内部实现是一个指针常量 示例: #include <iostream> using namespace std; //发现是引用,转换为 int* const ref = &a; void func(int& ref){ ref = 100; // ref是引用, 阅读全文
posted @ 2020-08-23 05:10 flyingswallow 阅读(130) 评论(0) 推荐(0)
摘要:引用做函数参数 作用: 函数传参时,可以利用引用的技术让形参修饰实参 优点: 可以简化指针修改实参 示例: #include <iostream> using namespace std; //1.值传递 void mySwap01(int a, int b) { int temp = a; a = 阅读全文
posted @ 2020-08-23 04:57 flyingswallow 阅读(99) 评论(0) 推荐(0)
摘要:引用注意事项 引用必须初始化 引用在初始化后,不可以改变 #include <iostream> using namespace std; int main(){ int a=10; int b=20; //int &c; //错误,引用必须初始化 int &c=a; //一旦初始化后,就不可以更改 阅读全文
posted @ 2020-08-22 10:43 flyingswallow 阅读(90) 评论(0) 推荐(0)
摘要:引用(一) 引用的基本使用 **作用:**给变量起别名 语法: 数据类型 &别名=原名 示例: #include <iostream> using namespace std; int main(void) { int a=10; int &b=a; cout << "a = " << a << e 阅读全文
posted @ 2020-08-21 00:23 flyingswallow 阅读(88) 评论(0) 推荐(0)
摘要:new操作符 C++中利用new操作符在堆区开辟数据 堆区开辟的数据,由程序员手动开辟,手动释放,释放利用操作符delete 语法:new 数据类型 利用new创建的数据,会返回该数据对应的类型的指针 示例1:基本语法 #include <iostream> using namespace std; 阅读全文
posted @ 2020-08-20 09:03 flyingswallow 阅读(242) 评论(0) 推荐(0)
摘要:1 内存分区模型 c++程序在执行的时候,将内存大致分为4个区域 代码区:存放函数体的而二进制代码,由操作系统管理 全局区:存放全局变量,静态变量和常量 栈区:由编译器自动分配和释放,存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程序员不释放,程序运行结束时由操作系统回收 内存四个区域的 阅读全文
posted @ 2020-08-19 09:32 flyingswallow 阅读(154) 评论(0) 推荐(0)
摘要:今天笔者突然想用C++实现求平方根的程序,整体的思路是采用迭代法 首先,写出迭代表达是Xk+1=0.5*(Xk+Y/Xk),由于笔者只是求解近似解, 所以,我为的控制了迭代的次数,选择5次。代码如下: 1 #include <iostream> 2 using namespace std; 3 cl 阅读全文
posted @ 2020-05-05 11:35 flyingswallow 阅读(1658) 评论(0) 推荐(0)
摘要:最近学习C++觉得一定要理论联系实际,于是就想用C++的名空间实现数据的隐藏, 为用户提供数据接口,我就想这实现一个简单的出栈和入栈的操作。这个程序由于设计的 很简单,我没有添加很多容错判断。大家可以提出一些完善的建议。 1 #include <iostream> 2 using namespace 阅读全文
posted @ 2020-05-05 01:30 flyingswallow 阅读(492) 评论(0) 推荐(0)
摘要:类型转换 1.公有派生类对象可以被当作基类的对象使用,反之则不可 派生类的对象可以隐含转为基类对象 派生类的对象可以初始化基类的引用 2.通过基类对象名、指针只能使从基类继承的成员 类型转换规则举例 1 #include <iostream> 2 using namespace std; 3 4 c 阅读全文
posted @ 2020-05-05 00:30 flyingswallow 阅读(636) 评论(0) 推荐(0)
摘要:私有继承和保护继承 私有继承 继承的访问控制: 基类的public和prorected成员:都以private身份出现在派生类中; 基类的private成员:不可直接访问 访问权限: 派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能访问 基类的private成员; 阅读全文
posted @ 2020-05-04 09:44 flyingswallow 阅读(629) 评论(0) 推荐(0)
摘要:看了一段时间的C++了,于是就想实战一下,看了网上的一些教程,用vs写一个窗体程序,拉起一个窗口, 本人想着从初级的入门开始,到以后可以根据自己的需求,写出一些上位机软件和一些工具方便自己调试单片机 用。 1 #include <windows.h> 2 #include <stdio.h> 3 # 阅读全文
posted @ 2020-05-03 10:44 flyingswallow 阅读(1636) 评论(0) 推荐(0)
摘要:继承方式简介及公有继承 不同继承方式的影响主要体现在: 1.派生类成员对基类成员的访问权限 2.通过派生类对象对基类成员的访问权限 三种继承方式 公有继承 私有继承 保护继承 公有继承(public) 继承的访问控制 基类的public和protected成员:访问属性在派生类中保持不变; 基类的p 阅读全文
posted @ 2020-05-03 09:11 flyingswallow 阅读(732) 评论(0) 推荐(0)
摘要:好久没有更新C++的博客了,一直也没有系统的学过C++, 偶尔会用到C++ 的概念,像模板函数和重载用的比较多,C++中的继承基本上没有怎么用过。 1, 1.继承与派生的概念 a.继承与派生是同一过程从不同的角度看: 保持已有类的特性而构造新类的过程成为继承; 在已有类的基础上新增自己的特性而产生新 阅读全文
posted @ 2020-05-01 09:13 flyingswallow 阅读(1368) 评论(0) 推荐(0)