现在位置: 首页 > 自动控制 > 文章
2018-11-01 14:16 工业·编程 ⁄ 共 2477字 暂无评论
一、概念 在如下的A指向B、B指向C的指向关系中: 首先 C是"一段内容",比如你用malloc或者new分配了一块内存,然后塞进去"一段内容",那就是C了。C的起始地址是0x00000008。 B是一个指针变量,其中存放着C的地址,但是B也要占空间的啊,所以B也有地址,B的起始地址是0x00000004,但是B内存中存放的是C的地址,所以B里面的内容就是0x00000008。 那么到此为止都比较好理解: B= 0x00000008;  //B的内容 *B ...
阅读全文
2018-10-31 21:23 科技·视野 ⁄ 共 2913字 暂无评论
有人问,迅速发展的科技会对人类进化产生什么影响?简单说说。 1、二三十年内,现有的大部分工作都会消失。 小白领最危险,以与文字、数字打交道,以简单归纳、总结、分析为主要内容的相对规范化的工作,很容易被机器替代。相比之下,换个轮胎之类的粗活,反而不那么好替代。 在金融行业,已经有明显的趋势了。大量的岗位被机器取代,新生的岗位远远没有被替代的岗位多。 这是很明显的。也是情理之中的,如果生产效率不提高,资...
阅读全文
2018-10-31 13:52 工业·编程 ⁄ 共 997字 暂无评论
对于一个函数,如果未加引用,则是按值传递,实际上只是复制了一个传入参数相同类型相同值的变量进行操作,当函数结束时,传入变量并未改变,如: 代码1: void Func(int num) {     num += 1; } int main() {     int a = 1;     Func(a);     cout<<a<<endl;     return 0; } 这段代码执行时,将a的值复制给num,num加上1之后为2,...
阅读全文
2018-10-30 13:48 工业·编程 ⁄ 共 483字 暂无评论
在重新回顾C语言数据结构时,在实现顺序表和链表时关于指针使用的区别让我觉得很有趣。 像在顺序表中实现 struct SeqList {     DataType arry[MAX_SIZE];     int Size; }; 而我们在使用顺序表时,往往在main函数中直接定义: SeqList seqlist; 在后面对顺序表的使用中,直接传参,比如 InitList(&seqlist); 而在链表中 typedef struct SQList {     DataType data;  &...
阅读全文
2018-10-28 13:42 工业·编程 ⁄ 共 516字 暂无评论
gdb有一组命令可辅助多线程程序的调试。 info threads 显示当前可调试的所有线程。gdb会为每个线程分配一个ID,我们可以使用这个ID来操作对应的线程。ID前面有“*”的线程是当前被调试的线程。 thread ID 调试目标ID指定的线程。 set scheduler-locking[off|on|step] 调试多线程程序时,默认除了被调试的线程在执行外,其他线程也在继续执行,但有的时候我们希望只让被调试的线程运行。这可以通过这个命令来实现。 该命令设置...
阅读全文
2018-10-27 13:38 工业·编程 ⁄ 共 469字 暂无评论
  如果一个进程通过fork系统调用创建了子进程,gdb会继续调试原来的进程,子进程则正常运行。那么该如何调试子进程呢? 单独调试子进程   子进程从本质上说也是一个进程,因此我们可以用通用的gdb调试方法来调试他。 举例来说如果要调试一个服务器中的某一个子进程,我们可以先运行服务器,然后找到目标子进程的PID,再将其附加(attach)到gdb调试器上,具体操作为: $ps -ef | grep 进程名 //通过上述命令的到...
阅读全文
2018-10-20 12:19 工业·编程 ⁄ 共 3595字 暂无评论
map是C++ STL中的关联容器,存储的是键值对(key-value),可以通过key快速索引到value。map容器中的数据是自动排序的,其排序方式是严格的弱排序(stick weak ordering),即在判断Key1和Key2的大小时,使用“<”而不是“<=”。map 使用二叉搜索树实现,STL map的底层实现是红黑树。 map有几个值得注意的地方:map的赋值运算是深拷贝,即调用map_a = map_b后,map_a中的元素拥有独立的内存空间。map的[]运算比较有意思,当元...
阅读全文
2018-10-18 20:47 控制·综述 ⁄ 共 2204字 暂无评论
蒸汽机的时代,人在体力方面已经让位给机器了。人工智能的时代,人类在脑力方面的许多工作也将由机器承担。 能归结出回归方程的,有监督学习。 有大量数据的,有非监督学习。 依靠经验熟能生巧的,有强化学习。 什么都说不清楚的,但是有相对清晰任务边界的,有深化学习。 80%的现有的人类工作岗位,都是相对低端的简单、枯燥、重复性的智力劳动,都能被机器取代。甚至一些高级劳动,都可能由机器承担其中的绝大部分甚至完全由...
阅读全文
2018-10-13 12:17 工业·编程 ⁄ 共 1150字 暂无评论
软件开发作为一项极易踩坑而且犯错成本很高的工作,一定要有强烈的检查意识。在工作中发现,检查意识能带来很多明显的好处: 检查代码可以加快开发完成时间。大型的C++工程中代码编译速度很慢,短则几十秒,长则十几分钟。因此写完代码就直接编译是非常错误的选择,应该首先由开发者检查代码,解决显而易见的错误,然后再进行编译。理想的情况是我们开发的代码可以一次编译通过,做到这点其实不难,只需保证有以下的检查意识: ...
阅读全文
2018-10-07 11:05 工业·编程 ⁄ 共 3164字 暂无评论
单例是什么?单例是一种特殊的类,用于确保只有一个对象,同时提供一种全局访问这个对象的方法。最近在工作中体验了一把5分钟将一个类改造成单例,感觉还是蛮不错的,所以我决定写一篇文章,跟大家交流技术和经验。 单例的原理是利用C++中的静态成员变量和静态成员函数,同时禁用构造函数的方法,达到只有一个对象实例的目的。 具体来说,设计一个单例的要点如下: (1)类的静态成员变量是该类的指针。 (2)类的静态成员函数...
阅读全文