首页 - 开心网文 > 讲个小bug找妈妈的故事。

讲个小bug找妈妈的故事。

发布于:2024-03-22 作者:admin123 阅读:51

  死循环小bug打出生就没见过妈妈。

  从程序猿手下出来的第一天,它看到旁边一个递归函数,运行速度慢得出奇!他想,这就是我的妈妈了吧!它坐过去大喊一声:“Debug”,没有反应。小bug才注意到,这个递归函数终于求到了返回值。而自己,还在死循环。

  这时候一个小声音想起来:“它可不是你妈妈,它不是bug,不需要debug!”小bug循声望去,看到一个不太快的小函数神气地看着他。

  “你是谁?”

  “我是广度优先查找函数,和这个大家伙都是查找算法,它叫深度优先查找函数!还是用递归的呢!”。

  “真厉害!还能节划分成好多个子规模任务呢!!”

  “它可一点儿也不快,哈哈,我们俩名字很像,这是我俩搜索策略不一样而已,不过论空间复杂度,它可比不过我!我的用途很大,网络爬虫都用得到我的算法!”

  “那这是哪儿啊?”

  “这是成员函数声明啊!我和深度优先搜索函数一样,都是图类的成员函数。我运行的时候啊,还需要建立个队列。深度优先搜索函数运行可不容易,它先得调用系统栈,把自己的函数地址变量神马的信息都压入系统栈,然后去遍历节点。等这一枝遍历完了,才能去遍历下一枝。它的递归树可是几何级的增长呢!我只需要创建个队列,不用管效率低下的编译器优化,因为所有调用都是我自己控制!遍历完了这个节点,遍历同级节点!空间非常节省呢!牛吧?”

  “牛!”

  “不过我们的搜索深度不如这个家伙大,他要是被调用了,就会一直遍历到叶节点!”

  “哦,真是挺厉害的,你们家族还有没有比他还快的?”

  “有啊!”

  “如果你要做路径搜索,启发式的A*算法就是啊!在一个巨大的二维地图中找最短路径,比逐像素点遍历要快的多呢!”

  小bug赞叹道:“真厉害!”

  “你想要找妈妈啊,要不你问一下你的亲戚编译错误和逻辑错误吧!我看到他们了,在那边呢!”

  小bug走过去,听到他们正在聊天。

  编译错误说:“现在编译器真是越来越混乱。有的时候我可以在for循环里头定义变量,有的时候就变成重定义了!乱七八糟的编译器版本真是让这帮ACMer苦逼死了!唉!闹心!”

  逻辑错误说道:“我就更闹心啦!你们好歹用个编译器就能检测出来,我们只要出现,不去单步调试很难找到哪里出错的!没办法,只能重构系统了。。。”说着,逻辑错误在函数前面加了个断点,“都怪前一天晚上程序猿靠咖啡撑到4点没睡觉!现在只要写代码,基本上都是逻辑错误,脑子都不转了!”。

  编译错误说:“我们也挺惨,别管怎么说你们还能被执行,我们连被执行的机会都没有啊!”

  逻辑错误:“这又是为啥啊?”

  编译错误:“我的程序猿用的是编译型语言,不是脚本语言,编译错误了,一行都执行不了!”

  小bug走到他们面前说:“叔叔们好,你们见过我妈妈吗?”

  编译错误:“哦,你是小bug吧?你妈妈曾经在这儿住过,后来不知为啥搬家了!你可以问问析构函数,所有对象被销毁前都会去他那儿报道,它道上朋友多!”

讲个小bug找妈妈的故事。

  小bug:“名字听起来像个死神!”

  编译错误:“可不是么!他们这个功能可大了。他们能够把对象所占的资源释放给系统,防止wild pointer的产生!”

  小bug:“他们是怎么被调用的?”

  编译错误:“大多还不是系统调用的?当对象要被销毁了,或者程序猿对对象使用了delete,析构函数就是在这个时候被调用的!调用完了系统又会切回到执行析构函数的后面的那条语句!”

  逻辑错误:“是啊!你可以跟着一个即将被销毁的对象一起走,他可能能帮你点儿忙,顺着调用语句往下单步执行,迟早能找到妈妈的!”

  小bug:“好的,谢谢二位!”

  小bug钻到了对象里头,顺着函数调用队列走啊走啊,忽然碰见一个被执行了一半的语句,身上还有个大大的箭头。

  “你是?”

  “这时一粗一细两个声音说:不是我,是我们!我们是两个指示标记!他是断点,我是执行指示箭头!”

  断点说:“我们经常遇见在一起,然后又分离”。

  “真悲情,你们从程序写出来就在一起么?”

  “不是的,我们最小的时候,程序员还不知道有bug,所以他不会debug,会直接run的。那个时候断点会被忽略,执行指示箭头甚至都木有出现过!直到程序有了bug,程序猿又不知道从那里出现的问题,就需要用到我们了。debug的时候,程序指示箭头会自动跳转到第一个断点。我们就相遇了!”

  小bug:“好厉害!你们还可以被程序猿选择性地执行?”

  “没什么啊,跳入和跳出都是程序猿控制的呢!”

  “真厉害!顺便问一下:你们见过我的妈妈没?”

  “好像听return语句说过,不太清楚。”

  讲个小bug找妈妈的故事。

  小bug又走啊走啊走到了函数结尾。

  一个返回语句走过来说:“听说你找妈妈呢,老大让我带你走。”

  “谢谢!”

  “不用客气,反正我也必须得走这一段。”

  他们一起走出了函数,走到了等号右边,身上还带着一堆天上掉下来不得不接住的数据。

  小bug摸摸等号,问:“你有没有见过我妈妈?”

  “不认识,你认识我么?”

  “不认识。”

  “怎么连我都不认识,我就是赋值运算符啊。”

  返回语句说:“老大说他特咕嘟,可爱讲故事了,咱一时半会儿走不了了,就当休息休息吧。”

  “你们累了,听大叔讲故事吧!”

  “好啊!”

  “就讲讲我年轻时的故事吧,我刚被程序猿写出来的时候还是个双目运算符呢,就被重写了,他好像叫运算符重载!”

  “你怎么不像sizeof那样不能被重载啊?”

  “因为sizeof是有固定功能的啊!求数据长度,我一个等号不一定是用来赋值用的啊!”

  返回语句说:“这到跟我们有点儿像!不过我们只要调用就跳出函数”。

  “小伙子有志向!”

  “大叔你是一个人在这里吗?”

  “不是的,还有变量和变量类型呢!”

  小bug才注意到旁边有个变量。“他也是个保留字么?”

  “他不是保留字,但是个标示符。”

  “那旁边的那个int呢?”

  “那是它的数据类型生命,叫整数类型!”

  “真有趣!”

  讲个小bug找妈妈的故事。

  小bug要去改动改动它,等号赶忙阻止:“别改,数据类型要是变了可就麻烦了!要是不能自动类型转换,那程序就要崩溃了!”

  听完了故事,小bug一行又走啊走,走到了汇编存储区,小bug突然感觉到一股强大的雷击,程序卡住了!返回语句大声叫喊!抓牢了!我们要被debug了!

  小bug突然觉得自己身上的器官排列得有点儿问题,于是一使劲,该换了几个器官的位置,被程序指示箭头扫了过去。

  “我被Debug啦!变成正确的语句啦!”

  “但是我还没有找到妈妈呢!”小bug说着,又难过起来。

  “孩子,我在这里呢!”遥远的地方传来一个声音。

  “妈妈?你在哪里?”

  “我在程序猿没喝完的咖啡里呢!”

  小bug急忙飞奔出屏幕,抱住了慈祥的妈妈。

  “其实你在经过这里时我就看到你了,但是没有叫你,他一藏在一个角落里,因为只有被程序猿debug这么一圈,你才能变成正确语句,你看,你已经被debug了!变成了一个正确语句了!”

  “是的!妈妈!我们再也不分开了!!”

一、

标签: #两个 #改革 #支持 #成功 #故事

相关文章

  • 其实创业不是想象的那么难,激励一生的六个经典故事

    其实创业不是想象的那么难,激励一生的六个经典故事

      、成功并不像你想像的那么难并不是因为事情难我们不敢做,而是因为我们不敢做事情才难的。   1965年,一位韩国学生到剑桥大学主修心理学。在喝下午茶的时候,他...

    2024-03-24

  • 愚人得宝的故事是什么?

    愚人得宝的故事是什么?

    意外得宝 曾有愚人,生活极度贫困。他欠了别人很多债,又无力偿还。他除了逃走之外,别无它法。当他来到一个沙漠时,他意外地发现了一个装满宝贝的盒子,在盒盖之下、珍宝...

    2024-03-24

  • 牛年说牛,求一则关于牛的故事 (急)

    牛年说牛,求一则关于牛的故事 (急)

      小的时候,我睡觉前最大的爱好就是缠着父亲给我讲故事,而且最喜欢听的几乎都是有关动物的。几乎每天如此,到后来爸爸实在找不到新故事了,就把老的故事来回的讲。我好...

    2024-03-24

  • 我想要一些详细,长一点的关于生命的故事。

    我想要一些详细,长一点的关于生命的故事。

      很多的,比如昂起头来真美--别看它是一条黑母牛,牛奶一样是白的。 珍妮是个总爱低着头的小女孩,她一直觉得自己长得不够漂亮。有一天,她到饰物店去买了只绿色蝴蝶...

    2024-03-24

  • 谁能提供一些关于团队合作的故事?

    谁能提供一些关于团队合作的故事?

      最经典是西游记 孙悟空的故事,可以说是—个由个人奋斗失败后转向团队成功,最终实现个人价值的经典案例。 孙悟空成长的故事,告诉我们这样一个道理:当我们学会了做...

    2024-03-24

  • 火柴天堂讲的是什么故事

    火柴天堂讲的是什么故事

      那天,妈妈看到我在玩游戏,站了好久,轻轻地说:"东东,游戏……还是少玩点吧。"妈妈是在家上班的自由职业者,对我一向火柴还是很理解,可能与她时尚的职业有关吧。...

    2024-03-24

发表评论

自定义链接1

电话咨询
自定义链接2