暴力倾向

最近在学习反汇编,而且还是 ARM 的,不是 x86 的。这不能怨我,我也是千百个不愿意啊。怨只能怨那个该死的 Symbian,给它送钱它都不理睬。

反汇编完了,有个函数的逻辑单看汇编实在是搞不明白,很想看它当初的 C++ 源代码是怎么写的,不过话说回来,要有 C++ 源代码,我还费这反汇编的劲儿干嘛,又不是想欺世盗名,假充高手。

笨人有笨办法,我老人家自己写 C++ 代码,编译完了也反汇编,从反汇编的结果上硬向他的代码靠拢。这个办法很像数学上那条名字极其猥亵的、让我等思想原本很纯洁的人听了都会想歪的准则。(此为暴力点一。在计算机这门学科里,暴力通常意味着很费力,比如暴力破解)

从反汇编的结果来看,这个派生类似乎要访问基类的一个私有成员,奶奶的,代码倒是能写得出来,可是估计市面上没有哪一款 C++ 编译器能够编译通过。想了半天也没搞明白他当初会怎么写这个代码。不过笨人的办法还是很多的,不就是个私有成员么,我老人家把你的地址取到,强转类型不就可以么?说干就干!(此为暴力点二,严重违反了面向对象的设计初衷)

哈哈,一举成功。再经过三五次微调,老汉编译出的这段代码和原来的代码一般无二。笨人有笨福啊。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注