摘要:
c/c++ 数组和指针 知识点 1,数组就是指针,对应代码里的test1 2,用auto声明,得到的是指针,对应代码里的test2 3,用decltype声明,得到的不是指针 ,对应代码里的test3 4,用指针模拟end ,对应代码里的test4 5,标准库函数std::begin,std::en 阅读全文
摘要:
c/c++ 数组 知识点 1,数组的声明和初始化,对应代码里的test1和test2 2,char数组,对应代码里的test3 3,数组不可以拷贝和复制,对应代码里的test4 4,指针数组, 数组的指针, 数组的引用,指针数组的引用,对应代码里的test5 5,数组的范围for用法,对应代码里的t 阅读全文
摘要:
c/c++ 标准库 迭代器 begin和end运算符返回的具体类型由对象是否是常量决定,如果对象是常量,begin和end返回const_iterator;如果对象不是常量,返回iteraotor 1,但凡是使用了迭代器的循环体,都不要向迭代器所属的容器添加元素。 2,不能在范围for循环中向vec 阅读全文
摘要:
c/c++ 标准库 vector 标准库 vector的小例子 test1~test7 c++ include include using namespace std; class A{ public: A(){cout v1; vector v2; / //test2 / vector v3(2) 阅读全文
摘要:
c/c++ 标准库 string 标准库 string的小例子 test1~test10 c++ include using namespace std; int main(void){ //test1 //string s1,s2; //cin s1 s2; //cout wd){ // cout 阅读全文
摘要:
c/c++ 模板与STL小例子系列 traits 对这个概念,还是处于懵逼的状态,初步体会就是,为了解决类型之间的转换问题。 从一个类型为A的指针,转化到类型为B的指针,中间需要用void 来作为中介。traits好像可以解决这种问题。 通过traits技术,可以达到扔进去什么类型,给我吐出什么类型 阅读全文
摘要:
c++ move关键字 move的由来:在 c++11 以前存在一个有趣的现象:T& 指向 lvalue (左传引用), const T& 既可以指向 lvalue 也可以指向 rvalue。但却没有一种引用类型,可以限制为只指向 rvalue。 就这么简单!你甚至可以暂时想像它的原型是这样的(当然 阅读全文
摘要:
c/c++ 右值引用 转自:https://www.cnblogs.com/catch/p/3500678.html 左值(lvalue)和右值(rvalue)是 c/c++ 中一个比较晦涩基础的概念,不少写了很久c/c++的人甚至没有听过这个名字,但这个概念到了 c++11 后却变得十分重要,它们 阅读全文
摘要:
c/c++ 模板与STL小例子系列 模板类与友元函数 比如某个类是个模板类D,有个需求是需要重载D的operator实现这样的友元需要3个必要步骤 1,在模板类D的实现代码的上面声明友元函数 2,在模板类D的实现代码里面声明它是我的友元 3,实现友元函数 c++ include using name 阅读全文
摘要:
c/c++ 模板与STL小例子系列 自建Array数组 自建的Array数组,提供如下对外接口 | 方法 | 功能描述 | | | | | Array() | 无参数构造方法,构造元素个数为模板参数个的数组 | | Array(int length) | 有参数构造方法,构造元素个数为参数lengt 阅读全文