C++学习笔记

本文章主要用于记录在学习C++时遇到的一些弱智问题。请大佬不要喷

在使用vector对象时,需要#include

return{i,j,q} 这里会触发隐式类型转换,然后调用vector的构造函数

return语句一执行则直接跳出函数,不再执行函数之后的语句

&在C++中除了取地址外,还有引用的作用(引用即为给变量创建另外一个别名),引用通常是在等式的左边,与类型名相连。

哈希表:是根据关键码值进行直接访问的数据结构,根据关键码值可以映射到表中的位置。

迭代器的使用方法:

auto 用来指示编译器在编译的时候自动指定类型

vector.begin( )用来指定vector的第一个元素

注意:map的迭代器结构
unordered_map<Key,T>::iterator it;
(*it).first; // the key value (of type Key)
(*it).second; // the mapped value (of type T)
(*it); // the “element value” (of type pair<const Key,T>)

求取vector的大小的方法有1.vector(对象).length 2.vector(对象).size()

auto在stl中的一个典型应用场景是用来定义迭代器。在auto it=map.find()这种情况下,一定要用auto来定义迭代器。

对于条件的且是&&,而逐位取且为&。

‘ ’是字符,而“ ”为字符串

unordered_map的初始化,可以在定义的时候={ { , } }
或者对象名[ ]= ;

注意for循环中变量的作用域,其变量仅在for循环的循环中有作用域。

一个类的定义的结尾必须加上分号。

注意传入函数引用的时候一定要加上const

使用min max函数需要包含头文件

vector strs{ }注意这里一定是用{ }

str.substr(0,index) 注意这里这个方法不包含index这个位置上的元素。

c++ 里的 for(char ch:s)实际为一个遍历字符串操作,相当于for( int i = 0; i < s.length(); i++) 对于任何类型都可以如此操作,C++11标准确立的。

c++空指针为nullptr

new在c++中的用法为用来向内存申请空间,并调用类的构造函数,相对应的delete操作符,先调用类的析构函数,然后再释放内存空间。 new也可以用来新声明一个结构体。

结构体的构造函数为:同名(参数列表):成员2(参数1),成员2(参数2){ }

结构体与类的区别:仅在于如果将成员直接定义再开头,那么结构体默认为public,而类默认为private。

常量正向迭代器与普通正向迭代器的区别是,常量正向迭代器是不能改变该容器里的对象的值的。
迭代器的可以支持 iterator+i ; iterator-i;为迭代器的前面或者后面的元素。

vector的访问方法,参见c++文档中的vector.at( )

获取C++中变量的类型:
#include
const type_info& nInfo=typeid(变量);
cout<<nInfo.name()<<endl;

vector.begin() vector.end()返回的类型都是迭代器。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值