C++
文章平均质量分 67
前期C++学习
就叫风吧
三年C语言,精通C语言语法与for循环if条件分支编程。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ vector简单使用
模板类vector 详细介绍 在计算中,vector(矢量)对应数组。 在数学中,可以使用N个分量来表示N维数学矢量,因此就从这方面讲,数学矢量类似一个N维数组。然而数学矢量还有一些计算机矢量不具备的其他特征,如内乘积和外乘积。 计算矢量存储了一组可随机访问的值。 头文件 #include <vector> 操作 创建 vector<type> 在这里插入代码片 ...原创 2021-09-14 21:25:49 · 382 阅读 · 0 评论 -
C++ 智能指针模板
智能指针关键字: auto_ptr unique_ptr shared_ptr 共性与应用区别原创 2021-09-13 18:43:01 · 287 阅读 · 0 评论 -
C++ string
构造函数 NBTS:null-byte-temnated string的缩写,表示以空字符结束的字符串------传统的C字符串 构造函数 描述 string(const char* s) 将string对象初始化为s指向的NBTS string(size_type n, char c) 创建一个包含n个元素的string对象,其中每个元素都被初始化为字符串c string(const string &str) 将一个string对象初始化为string对象str(复制构造函原创 2021-09-13 18:42:21 · 412 阅读 · 0 评论 -
C++ cout格式化输出、cin、简单文件I/O
《C++ primer plus》摘抄总结,方便查阅回忆 cin cin >> (抽取方式,只提取一般输入)检查输入的方法介绍: 不同版本的抽取运算符查看输入流的方法是相同的。 它们跳过空白(空格、换行符和制表符),直到遇到非空白字符。 在单字符模式下,>>运算符将读取该字符,将它放置到指定的位置。 在其他模式下,>>运算符将读取一个指定类型的数据。 也就是说,它读取从非空白字符开始,到与目标类型不匹配的第一个字符之间的全部内容。 输入 单字符输入 (1)成员函数:原创 2021-09-07 21:54:18 · 873 阅读 · 0 评论 -
C++ 类型转换运算符
前言描述 在C语言中,类型转换,可以直接使用(type)进行类型转换。 variable = (type) variable; 在C++看来,C语言中的类型转换运算符太过松散,对于这种松散的情况,C++采取的措施是,更严格地限制允许的类型转换,并添加4个类型转换运算符,使转换过程更规范: dynamic_cast const_cast static_cast reinterpret_cast 可以根据目的选择一个适合的运算符,而不是使用通用的类型转换。 这指出了进行类型转换的原因,并让编译器原创 2021-09-06 21:45:24 · 221 阅读 · 0 评论 -
C++ 类模板
全文为个人理解总结用 《C++ primer plus》14章 类模板概念 有点理解不来。梳理一遍。 核心要义:模板,是为了满足重用代码的需求。 (比如一套代码,多种数据类型皆可使用。) 百度百科: 泛型即是指具有在多种数据类型上皆可操作的含义,与模板有些相似。 语法 类模板的声明和定义 一个普通的Stack类(栈类) Stack.h typedef unsigned long Item; class Stack { private: enum {MAX = 10}; Item item[原创 2021-09-06 00:23:10 · 188 阅读 · 0 评论 -
C++ 复制构造函数和赋值运算符
C++会自动提供的成员函数(如果没有定义) 默认构造函数 默认析构函数 复制构造函数 赋值运算符 地址运算符 这些默认函数均为空函数,运算符 复制构造函数 复制构造函数用于将一个对象复制到新创建的对象中。 类的复制构造函数原型通常如下: Class_name(const Class_name &); 它接受一个指向类对象的常量引用作为参数。 ...原创 2021-08-29 01:00:47 · 695 阅读 · 0 评论 -
C++ 奇奇怪怪的bug记录
编程奥义: 即便是new出来的内存,最好也是要清空一下。 bug1: 描述:《c++ primer plus》12章练习2 自定义类,并且重载 + 运算 String s1(" and I am a C++ student."); String s2 = "Please enter your name: "; String s3; cout << s2; cin >> s3; s2 = "My name is " + s3;原创 2021-08-26 23:52:24 · 393 阅读 · 0 评论 -
C++ 转换函数(类与数值之间的转换)
类的自动转换 将构造函数作为自动类型转换。 只有接收一个参数的构造函数才能作为转换函数。 explicit 关闭隐式自动转换,只允许显示自动转换 class class_x = (class )y; class class_x = class (y); 自动转换使用: 类 = (类类型)值 类的强制类型转换 转换函数必须是类方法 转换函数不能指定返回类型 转换函数不能有参数 原型示例: operator typename( ); operator double( ); double x = cla原创 2021-08-19 22:41:39 · 285 阅读 · 0 评论 -
C++运算符重载
运算符重载 要重载运算符,需使用被称为运算符函数的特殊函数形式。运算符函数的格式如下: 示例 解析 operatorop(argument-list) operator + 运算符 + (参数列表) operator+( ) 重载+运算符 operator*( ) 重载*运算符 operator-( ) 重载-运算符 重载限制: op必须是有效的C++运算符,不能虚构一个新的符号。 重载后的运算符必须至少有一个操作数是用户定义的类型,这将防止用户为标准类型重载运算符。(原创 2021-08-19 22:16:08 · 238 阅读 · 0 评论 -
C++ 类的简单定义、实现、使用
定义类 privat 私有成员,只允许通过共有成员进行访问 public 共有成员,外部接口 若未标明,则默认为私有成员 stock.h class Stock { private: public: } stock.cpp 实现类 构造函数 析构函数 对象的两种初始化方式 在这里插入代码片 ...原创 2021-08-10 22:03:03 · 462 阅读 · 0 评论 -
C++ 名称空间
(一)名称空间 先上定义 使用不同厂商提供的类库时,可能导致名称冲突。 名称空间是为解决名称冲突而提供的特性。 举个例子,有如下两个头文件: Jack.h #ifndef JACK_H_ #define extern double pail; extern void fetch(); extern int pal; struct Well{ .... ...}; #endif Jill.h extern double bucket(double n); extern double fetc原创 2021-08-08 17:44:56 · 141 阅读 · 0 评论 -
C++ 函数重载(多态)、函数模板
内容均出自《C++ primer plus》,本文仅为个人理解总结所用。 若有不明欢迎站内私信交流。 若发现文中错漏之处,期待不吝赐教站内私信。 (一)函数重载(多态) 先上定义: C++ Premer Plus (page276) 函数多态是C++在C语言的基础上新增的功能。 术语"多态":指的是有多种形式。 术语"函数重载":指的是可以有多个同名函数,因此对名称进行了重载。 两个术语是同一回事,但通常使用函数重载。 函数多态(函数重载)让程序能够使用多个同名的函数。 实例理解: 同名函数,.原创 2021-08-07 19:56:24 · 850 阅读 · 0 评论 -
C++ 零碎笔记
cout 输出八进制、十进制、十六进制 //可以分别使用下列代码 指定输出数值进制类型 //制定后固定不变,需要再次指定复原 cout << oct; cout << dec; cout << hex; cout 设置输出精度 //float默认显示六位小数 cout.setf(ios_base::fixed, ios_base::floatfield) //复原 cout.setf(ios_base::fixed, ios_base::fixed) ...原创 2021-08-06 22:15:39 · 208 阅读 · 0 评论
分享