摘要: 题目1:一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个n级台阶共有多少种跳法? 题目2:一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶...也可以一次跳n级台阶。求该青蛙跳上一个n级台阶共有多少种跳法? 阅读全文
posted @ 2018-07-24 10:19 我得去图书馆了 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 递归以及非递归实现: 阅读全文
posted @ 2018-07-24 09:15 我得去图书馆了 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 运行结果: 阅读全文
posted @ 2018-07-23 22:27 我得去图书馆了 阅读(135) 评论(0) 推荐(0) 编辑
摘要: #include #include using namespace std; template void pushQueue(stack &stack1, T t){ stack1.push(t); } template T popQueue(stack &stack1, stack &stack2){ // 先将stack1倒到stack2中 while(!stack1.empt... 阅读全文
posted @ 2018-07-23 21:12 我得去图书馆了 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 1.联合体 联合体(union)与结构体(struct)有一些相似之处。但两者有本质上的不同。在结构体中,各成员有各自的内存空间, 一个结构变量的总长度是各成员长度之和。而在联合体中,各成员共享一段内存空间, 一个联合变量的长度等于各成员中最长的长度。 应该说明的是, 这里所谓的共享不是指把多个成员 阅读全文
posted @ 2018-07-23 19:56 我得去图书馆了 阅读(1917) 评论(0) 推荐(1) 编辑
摘要: 1、memwatch的使用 (1)首先去官网上下载源码: http://www.linkdata.se/sourcecode/memwatch/ 解压得到memwatch.c以及memwatch.h两个文件 (2)对于vs2010来说: 首先将两个文件放到项目的根目录下,然后导入到头文件和源文件中: 阅读全文
posted @ 2018-07-23 08:52 我得去图书馆了 阅读(935) 评论(0) 推荐(0) 编辑
摘要: 在语句#3中,p2接管string对象的所有权后,p1的所有权将被剥夺。前面说过,这是好事,可防止p1和p2的析构函数试图刪同—个对象; 但如果程序随后试图使用p1,这将是件坏事,因为p1不再指向有效的数据。 下面来看使用unique_ptr的情况: 编译器认为语句#6非法,避免了p3不再指向有效数 阅读全文
posted @ 2018-07-22 17:13 我得去图书馆了 阅读(776) 评论(0) 推荐(0) 编辑
摘要: 1、综述 shared_ptr 是一个标准的共享所有权的智能指针, 允许多个指针指向同一个对象. 定义在 memory 文件中(非memory.h), 命名空间为 std. shared_ptr 是为了解决 auto_ptr 在对象所有权上的局限性(auto_ptr 是独占的), 在使用引用计数的机 阅读全文
posted @ 2018-07-22 16:35 我得去图书馆了 阅读(1206) 评论(0) 推荐(0) 编辑
摘要: 1、智能指针背后的设计思想 我们先来看一个简单的例子: 当出现异常时(weird_thing()返回true),delete将不被执行,因此将导致内存泄露。 如何避免这种问题?有人会说,这还不简单,直接在throw exception();之前加上delete ps;不就行了。是的,你本应如此,问题 阅读全文
posted @ 2018-07-22 10:31 我得去图书馆了 阅读(853) 评论(0) 推荐(0) 编辑
摘要: 待补充 阅读全文
posted @ 2018-07-22 09:47 我得去图书馆了 阅读(249) 评论(0) 推荐(0) 编辑