- 博客(21)
- 收藏
- 关注
原创 vector
vector可以容纳绝大多数类型的对象,引用不是对象,不能作为vector的元素早期的版本vector元素还是vector的话,需要在右尖括号中间加空格,c++11去掉了这个限制
2020-06-04 00:09:45
150
原创 string
string可直接用于输入输出流空白:空格、换行、制表符输入流获取时,会自动过滤字符串首部的空白,从第一个真正字符还是到下一个空白结束string a;cin>>a;cout<<a;输入“ 123456 456789”输出“123456”getline函数读取一整行入参: getline(输入流,string对象)返回值:返回流参数功能:从入参输入流中读取内容,直到遇到换行符,注意换行符也会被读入,然后将读入内容放到string对象中,此...
2020-05-15 01:17:50
144
原创 using声明
有了using声明之后。无需作用域操作符::前缀来声明命名空间,如:using std::cin头文件中一般不要包含using,因为头文件中的内容会被拷贝到其他文件,防止不经意间的声明
2020-05-15 00:44:38
141
原创 终于,tensorflow装上了
前三天晚上连续3晚搞到2点,终于装好了,本来想着一次就ok,结果遇到若干个bug,各种搜索终于搞定了环境: windows 10 系统安装步骤1. 首先下载Anaconda3-4.2.0-Windows-x86_64.exe下载网址:国内清华镜像网站https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/一路安装,安装完成后在cmd中输入 “conda --version”查看版本打开Anaconda Prompt,配置下载网站..
2020-05-15 00:26:15
382
原创 空间配置器
c++标准库在许多地方采用特殊对象处理内存的分配和回收,这种对象称为分配器或者配置器,最初配置器是作为STL的一部分引入,当前作为运用某种内存模型方案的基础。c++标准库提供了默认的分配器namespace std { template<class T>class allocator;}举例:vector的定义namespace std { template<typename T,typename Allocator=allcator<T>...
2020-05-12 01:06:56
149
原创 类内成员的初始值
类内初始值即在定义时未赋初值,将用该值初始化成员 int a = 0; int b(1); //错误,不能用()提供初始化 int c{ 2 }; int d = { 3 };
2020-05-10 22:27:33
665
原创 decltype
返回操作数的数据类型,如decltype(f()) sum=0;与auto不同,decltype会保留所有的const属性decltype和引用int a=0,&b=a,*c=&a;decltype(b)为 int& //保证与原类型相同decltype(b+0)为int //表达式的返回值为intdecltype((a))为int& //变量加()这个整体被认为是表达式,表达式的返回值为引用,这是规定declt...
2020-05-10 22:18:36
154
原创 auto
auto语句推断变量类型,一条语句仅能有一种类型,如:auto a=1,b=3.14;//错误auto会自动将赋值对象的引用属性去掉,如:int a=0,&b=a;auto c=b; //auto为intauto不保留顶层的const属性,但会保留底层的cosnt,如const int a=0;auto b=a; auto为int而非const int如果需要有顶层const属性,则需要加:const auto &a=42;所谓顶层const:本身是const
2020-05-10 21:53:17
387
原创 类型别名typedef
类型别名不是简单的将原名替换进去理解,而是相当于加了整体加了括号的优先级提升,如typedef char* stringconst string a=0与const char *a=0意义完全不同,前者a为常量指针,后者为指向常量的指针
2020-05-10 21:29:07
145
原创 const和constexper
编译器再编译过程中把const修饰的变量全都替换为值,而与此矛盾的是全局变量只能定义一次,其他地方只是声明,无法获取初值,为此设定了const对象只在文件内有效,然后所有用到它的文件全都重新赋值共享const对象的方法:1. 将const常量放在公共头文件中,直接包含头文件,相当于每个都有自己独立的定义2. 将const对象的定义和声明处全都添加const修饰,即相当于强行添加const属性一、const的引用正常情况,引用的类型必须与其引用对象的类型保持一致,但初始化常量引用有两个例外
2020-05-10 21:22:40
519
原创 引用、指针
引用只能绑定在对象上,不能给表达式或者字面值引用一旦定义不能再绑定到其他对象引用不是对象,没有实际地址,因此不能定义指向引用的指针预处理变量NULL:此变量不属于命名空间std,由预处理器负责管理定义指向指针的应用: int a = 123456; int *b = &a; int *&c = b; cout << *c;...
2020-05-10 20:12:57
102
原创 初始化、赋值、声明、定义
初始化和赋值是两个完全不同的操作列表初始化:用花括号{}来初始化变量,列表初始化下,如果损失精度会编译错误,正常初始化则是warning常见初始化方法 int a = 1; int b = { 2 }; int c(3); int d{ 4 }; double e{ 5.0 }; int f(e); //warning int g{ e };//error默认初始化:定义于任何函数体之外的变量会被初始化为0,函数体内部的则不被初始化...
2020-05-10 19:57:35
266
原创 变量与基本类型
1.有符号与无符号char在一些机器上是有符号的,在一些机器上是无符号的2.类型转换当付给无符号类型一个超出它表示范围的值时,初始值为取模后的余数当付给有符号类型一个超出它表示范围的值时,初始值为未定义的...
2020-05-10 15:10:25
119
原创 iostream库
iostream包含了两个基础类型istream和ostream表示输入流和输出流输出运算符<<: 接受两个运算对象,左侧必须为一个ostream对象,右侧为要打印的值,运算结果为左侧的运算对象,因此输出运算符可以连续使用。输入运算符同上。当使用一个istream对象作为条件时,即考察对象的真假,当遇到文件结束符、或无效的输入(如输入类型非法)时,istream对象非法,即为假举例:int a,b=0;while(cin>>a)b+=a; 此处输入1 ...
2020-05-09 23:52:02
470
原创 函数调用操作符()重载
即理解为仿函数#include <iostream>using namespace std;template<class T>struct Plus{ T operator()(const T& x, const T& y) { return x + y; }};template<class T>struct Minus{ T operator()(const T& x, cons...
2020-05-08 22:50:54
173
原创 函数返回值常量
const修饰函数返回值注:此处只讨论语法,实用性暂不考虑返回非常量复杂类型的值则可以为左值,返回为int,即使不是const也不可以为左值,返回类或者结构体可以为左值(此处可能是因为复杂类型有默认的赋值函数)不可为左值,可以赋值给变量,不可赋值给非常量引用举例:#include <iostream>#include <vector>#include <string>using namespace std;template<class
2020-05-08 22:41:27
1029
原创 静态常量成员变量的初始化
static const修饰的成员变量只有整数类型的可以在类内初始化,其他不行#include<iostream>#include<algorithm>#include<vector>using namespace std;class test{public: static const double a = 2.0; //编译不通过 static const float b = 2.0; //编译不通过 static const c...
2020-05-08 19:23:17
521
原创 临时对象
一种无名对象,制造临时对象的方法在类型别名后边加一对小括号,写入初值,如:int(8),相当 于调用类型的的构造函数,但不指定对象名主要引用场景是应用于仿函数与算法的搭配举例:#include<iostream>#include<algorithm>#include<vector>using namespace std;template<class T>class test{ T a;public: test<T...
2020-05-08 18:43:34
127
原创 STL源码剖析学习笔记
记两次内部转岗面试之后,对c++基础知识了解太少,尝试写博文记笔记来提升自己的c++基础,先从c++primer和stl源码解析开始学起,夯实基础
2020-04-22 21:02:55
127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人