- 博客(22)
- 问答 (3)
- 收藏
- 关注
转载 C++实现简单的对象池
对象池的实现事实上是很easy的思想也是非常easy的:用一个队列来存放全部的对象,须要时get一个对象,从队列头取一个对象,当用完后。又一次将该对象投入到队列尾部。—————————————————————————————————————————————————————————————————//写的错误或者不好的地方请多多指导。能够在以下留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我改动,更好的分享给大家,谢谢。转载请注...
2021-04-15 16:48:25 231
原创 「剑指offer」的刷题记录
link2nowcoder剑指offer编程题目合集二维数组中的查找 | 有序就有二分,二分搜索降低复杂度,整体O(nlgn)| 三星题 class Solution {public: bool Find(int target, vector<vector<int> > array) { //逐个在首个元素其目标值小的数组里面进行二分...
2020-01-02 11:21:21 206
转载 C++11 并发指南系列(转)
https://www.cnblogs.com/haippy/p/3284540.html本系列文章主要介绍 C++11 并发编程,计划分为 9 章介绍 C++11 的并发和多线程编程,分别如下:C++11 并发指南一(C++11 多线程初探)(本章计划 1-2 篇,已完成 1 篇)C++11 并发指南二(std::thread 详解)(本章计划 1-2 篇,已完成 1 篇)C++11 并...
2019-07-29 15:04:51 148
转载 C++ 并发之 std::thread 和 std::mutex
做机械手的一个项目接触到了C++并发。线程和锁,一个是任务的最小执行单位,一个是互斥量的保镖,这都很清楚。//----------------------------------------------------------------------部分转载-------------------------------------------------------------------...
2019-07-29 10:35:20 306
原创 【动态规划】笔记
动态规划(dynamic programming)通过组合子问题的解来求解原问题,“programming”指的是一种表格法。动态规划对每个子问题只求解一次,将其解存在一个表格中,从而无须每次求解一个子子问题时都重新运算。通常用来求解“最优化问题”,这类问题可以有很多可行解,每个解都有一个值,我们希望寻找具有最优值的解。Ex1 钢条切割第一步 :刻画最优解的结构特征 钢条的...
2019-04-15 20:27:25 150
转载 【HeadFirst设计模式】观察者模式
懒得写了,转一个出版者改称为“主题”(Subject),订阅者改称为“观察者”(Observer)。出版者+订阅者=观察者模式 观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 设计原则:为了交互对象之间的松耦合设计而努力。作者:Grey原文地址:http://www.cnblogs.com/greyzeng/p/5...
2019-04-11 15:54:30 139
原创 【HeadFirst设计模式】策略模式
设计原则:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码放在一起。 把会变化的部分取出并封装起来,以便以后可以轻易地扩充此部分,而不影响不需要变化的其他部分。 这样的概念很简单,几乎是每个设计模式背后的精神所在。所有的模式都提供了一套方法让「系统中的某部分改变不会影响其他部分」 针对接口编程,而不是针对实现编程 我 们 利 用 接 口 代 表 每 个 行...
2019-04-11 12:57:51 203
原创 《C语言深度解剖》读书笔记
关键字32个,值得一提的是sizeof也是关键字,还有没见过的比如volatile,见得比较少的auto,goto auto 缺省都是auto register 不能用&取其变量地址,没在内存,变量不能长于整型长度,必须是一个单个的值 static 修饰函数和变量,修饰函数将函数定义为内部函数,只能在函数所在文件使用,不用担心重名了。修饰变量分全局和局部,全局变量被修饰后将无法被...
2019-04-09 21:39:26 281
原创 C语言定义与声明
C语言中的对象必须有且只有一个定义,但它可以有多个extern声明,extern是使用其他文件中定义的变量时需要的关键字区分定义和声明声明是普通的声明:这个名字已经匹配到一块内存上了,描述其他地方的创建的对象,声明可以声明多次定义是特殊的声明:它为对象分配内存。声明没有分配内存,这是最大的区别。定义指针时,编译器并不为指针所指向的对象分配空间,它只是分配指针本身的空间,除非在定...
2019-04-05 21:50:14 4529
原创 C语言声明的各种复杂情况
你知道 下面这个东西指什么吗?char * const *(*next)();说起来,c语言真的太容易出现各种莫名其妙(不能明白其中的奥妙)的东西了。看下面这个东西上面的就应该被理解为 next是一个函数指针,它返回一个指针,它指向一个类型为char的常量指针。有下面这些例子高级声明 看个例子 int *a; 它把*a声明为一个整数,由此推断出...
2019-04-05 20:32:58 322
原创 C语言关于const的那点事儿~~~
const应该是单词constant的缩写,意思是永恒的不变的。const这个关键字用得到的地方很多,用的方式也很多,因此让人疑惑的地方也比较多,今天做个总结。用const来说明一个常量const int a;int const a;都是把a常量化了,告诉大家不要修改a的值,如果你非要修改a的值const int a = 10;int *p = (int*)&a;*...
2019-04-05 15:08:58 232
原创 C语言泛型实现抽象数据类型(ADT:abstract data type)之泛型堆栈
泛型:泛型是编写一组函数,但是数据的类型暂时可以不确定的能力。这组函数随后用用户需要的不同类型进行实例化或创建。C语言并没有提供这种能力,泛型思想被提出的时间的比C语言的设计晚很多,但是我们可以用define模拟这种机制。下面是一个用静态数组实现的泛型堆栈,数组的长度当堆栈实例化时作为参数提出#include <assert.h>//定义一个宏,其中SUFFIX是...
2019-04-04 14:54:22 284
原创 C语言抽象数据类型(ADT:abstract data type)之BST二叉搜索树的实现
BST:每个值比左子树的所有值都大,比右子树所有值都小根节点:没有双亲节点 叶子节点:没有孩子节点BST插入节点的递归算法:递归在尾部出现,(尾部递归),可以使用迭代更加有效的实现这个算法BST删除节点:删除没有孩子的节点:直接删除 删除有一个孩子的节点:将孩子连接到这个节点的父亲节点 删除有两个孩子的节点:(一种方法)删除左子树中值最大的节点(回到1),然...
2019-04-04 13:40:34 574
原创 C语言抽象数据类型(ADT:abstract data type)之队列的实现
头文件queue.h定义队列需要的接口,这里包括了动态数组和链式需要的create_queue和destory_queuequeue.h#include <stdlib.h>#define QUEUE_TYPE intvoid create_queue(size_t size);void destory_queue(void);void insert(QUEU...
2019-04-03 19:57:44 586
原创 C语言抽象数据类型(ADT:abstract data type)之堆栈的三种实现
所有ADT都要确定的一件事:如何获取内存来存储值,C语言有三种方案静态数组要求结构长度固定,编译时就要确定,最简单最不易出错动态数组运行时才分配,如有需要,可以通过分配一个更大的新的数组,复制原来的值到新数组中,删除原先的数组,达到动态改变数组长度的目的链式结构 很灵活,但链接字段要消耗内存,访问一个特定的元素的效率不如数组C语言实现堆栈定义一个堆栈模块的接口#def...
2019-04-03 19:29:07 824
原创 C语言抽象数据类型(ADT:abstract data type)之链表节点定义及有序链表插入新节点
链表:包含一些数据的独立的数据结构(通常称为节点)的集合。单链表根指针记录链表的起始位置,根指针指向链表的第一个节点,注意根指针只是一个指针,它不包含任何数据最后一个节点的指针字段值为NULL,提示链表后面不再有任何节点。用结构体创建一个简单的节点数据结构Nodetypedef struct NODE { struct NODE *link; ...
2019-04-03 18:13:03 1308
原创 C语言执行环境(断言,排序查找)
库文件<stdlib.h> 终止执行函数void abort( void ) 用于不正常的终止一个正在执行的程序void atexit( void (func) ( void )); 把一个函数注册为退出函数,当程序正常退出时会调用这个函数,退出函数不接受任何参数void exit(int status) ;正常终止程序,main函数返回一个值等于用这个值作为参数调用这...
2019-04-03 16:44:15 231
原创 蒙特卡洛光线追踪 计算机图形学冬季作业
每日在实验室学(hua)习(shui),不知不觉图形学作业要交了。虽然不会做,但是要交作业,还是得逼一把自己,在实验室博士师姐热心的帮我要了博士师兄的作业后,我满怀期待的打开,一脸失望的退出。okkkkkkk ! 不过是光线追踪而已,我自己做就好,周日不休息也并不是不能接受的嘛~微笑脸,在此感谢师姐师兄以及在网上写博客的各位大佬,感谢你们的帮助!【转】参考博客链接https://blog.c...
2019-03-31 20:19:49 3224
原创 《C和指针》读书笔记 中篇
目录结构和联合动态内存分配使用结构和指针高级指针话题预处理器说实在的,书看过了很容易忘记,还是要经常复习复习,最主要的是要知道有那么个东西,忘记了不要紧,要用的时候知道有这么个东西就知道去哪找结构和联合聚合数据类型:同时存储超过一个的单独数据。C提供了两种类型的聚合数据类型,数组和结构。 结构声明 深色的三个部分至少要出现两个。 ...
2019-03-26 23:20:19 130
原创 绝对路径相对路径以及VS下他们的使用
首先,绝对路径是一个完全确定的地址,是最容易理解的。而相对路径则有不同的写法 ./是当前目录 ../是父级目录 /是根目录 根目录指逻辑驱动器的最上一级目录,它是相对子目录来说的。打开“我的电脑”,双击C盘就进入C盘的根目录,双击D盘就进入D盘的根目录。其它类推。根目录在文件系统建立时即已被创建,其目的就是存储子目录(也称为文件夹)或文件的目录项。在vs这个很...
2019-03-23 16:47:33 1352
原创 《C和指针》读书笔记 上篇
这本书描述的是C90,C语言的版本现在有四个,分别是C90,AMD1,C99,C11(排名分先后)。C90是旧式C的继承者,同时是C++的基础。为什么要读这本书?深入而完整地了解关于指针的知识,避开指针带来的痛苦。写读书笔记要写自己读这本书的收获,而非摘录这本书的一部分内容,读书笔记如果单纯摘录,不如重新读书。快速上手(关于C语言最基础的知识)注释的运用,使用预处理指令是更...
2019-03-23 13:50:29 356
空空如也
SetMenuItemBitmaps没效果,不知道该怎么改
2018-11-15
MFC下拉工具栏选择按钮替换时按钮位图出错!
2018-11-06
MFC dropdowntoolbar 显示问题,朋友们帮看一下,感谢!
2018-11-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人