摘要:
仿函数:可以将类对象当函数一样使用,实际就是重载了“operator()”的类 函数适配器 绑定适配器:bind1st、bind2nd 将n元函数对象的指定参数绑定为一个常数,得到n 1元函数对象 include include include include using namespace s
阅读全文
posted @ 2018-09-09 15:09
泰坦妮克号
阅读(248)
推荐(0)
摘要:
函数对象:普通函数就是函数对象 重载了“()”运算符的类的 实例 是函数对象,也可以传入 类名() 的形式 返回值为bool类型的一元对象,称其为一元谓词 返回值为bool类型的二元对象,称其为二元谓词 定义一个类,让这个类去重载函数调用运算符,函数调用运算符重载函数实现需要用的功能,这个类的对象,
阅读全文
posted @ 2018-09-08 22:36
泰坦妮克号
阅读(114)
推荐(0)
摘要:
栈和队列共同支持的操作 s1 op s2 op可以是==、!=、、 =之一,它会对两个容器适配器之间的元素按字典序进行比较 s.size() 返回s的元素个数 s.empty() 返回s是否为空 s.push(t) 将元素t压入到s中 s.pop() 将一个元素从s中弹出,对于栈
阅读全文
posted @ 2018-09-08 09:32
泰坦妮克号
阅读(187)
推荐(0)
摘要:
序列是有序的,可以使用二分查找: ··· low = 0; high = n 1; while (low 输入流迭代器:istream_iterator,可用 (P++)获得下一个输入的元素 输出流迭代器:ostream_iterator,可用( P++)=x将x输出到输出流 迭代器:功能更为强大的
阅读全文
posted @ 2018-09-07 23:03
泰坦妮克号
阅读(129)
推荐(0)
摘要:
线程执行完入口函数,也会退出,在为一个线程创建一个std::thread对象后,需要等待这个线程结束。 线程在std::thread对象创建时启动 构造std::thread对象,std::thread可以用可调用类型来构造: std::thread mythread(f) //会用f的构造函数去初
阅读全文
posted @ 2018-09-06 21:47
泰坦妮克号
阅读(1506)
推荐(0)
摘要:
场景: C++ 标准库使用比如vector::push_back 等这类函数时,会对参数的对象进行复制,连数据也会复制.这就会造成对象内存的额外创建, 本来原意是想把参数push_back进去就行了. C++11 提供了std::move 函数来把左值转换为xrvalue, 而且新版的push_ba
阅读全文
posted @ 2018-09-06 19:50
泰坦妮克号
阅读(267)
推荐(0)
摘要:
类模板:使用户可以为类声明一种模式,使类中某些数据成员,某些成员函数的参数,某些成员函数的返回值,能取任意类型。 类模板中,类名后必须跟 在主程序中定义对象时,类需说明对象是什么类型,同样用括号,在尖括号中指定所需类模板的类型。 类模板: template class 类名 { 类成员声明} 在类模
阅读全文
posted @ 2018-09-06 11:08
泰坦妮克号
阅读(376)
推荐(0)
摘要:
总结: 函数的返回值用于初始化在调用函数时创建的临时对象。 如果不是引用 :会将函数返回值复制给临时对象 当返回非引用类型,其返回值可以是局部对象,也可以是求解表达式的结果 返回引用类型 :没有复制返回值,返回的是对象本身,千万不要返回局部对象的引用,不要返回指向局部对象的指针 返回引用时,要求在函
阅读全文
posted @ 2018-09-05 16:28
泰坦妮克号
阅读(1040)
推荐(0)
摘要:
抽象类: 有些函数由于信息不够具体,而无法实现 由此而来的纯虚函数:在基类中声明的纯虚函数,在基类中无法实现(是因为在基类中定义的信息不够具体,不是学的知识不够),于是这个函数没办法规定具体的算法,但是为了规定整个类家族的统一的行为和对外接口,又需要再比较高层次的基类中定义这么一个函数。 在函数头之
阅读全文
posted @ 2018-09-04 16:59
泰坦妮克号
阅读(760)
推荐(0)
摘要:
多态:通过绑定实现,所谓绑定,将一个标识符名称与一段函数代码结合起来,如函数调用表达式与函数体结合,这就是一种绑定,根据实现的时机,分为编译时绑定和运行时绑定。 多态, 使得操作接口具有表现多种不同形态的能力,在不同环境下对不同对象具有不同的处理方式 不是所有的运算符都可以放在类体中作为成员函数来重
阅读全文
posted @ 2018-09-03 12:00
泰坦妮克号
阅读(219)
推荐(0)