主要介绍:静态库的用处,如何生成静态库,若何反过来使用静态库内的代码。
先给大家讲个故事:
从前有一个程序员A,他业余时间写出了一个非常牛逼的游戏引擎的代码。接着现在程序员A想把自己写的代码卖给一家游戏公司B。所以A就把他所写的游戏引擎的所有代码一股脑的发给了B公司,结果发生B公司找几个他们公司里优秀的程序员把A的代码复刻一份出来,然后说这是我们公司内部编写出来的游戏引擎,并且向法院起诉A偷窃公司核心机密。这时A悔的肠子都青了。
那该如何避免发生A程序员这种情况呢?其实只要能让B公司能使用到A所写的代码的功能,但无法获取其中有效的源代码就行了,也就是说我A只出售使用权,但不卖源代码。那怎么才能在不暴露源代码的前提下,使得别人能够使用该代码的功能呢?这里我给出一个方法:把源代码编译成静态库,然后再把头文件和静态库一起卖个别人,这样别人就只能使用而不能窃取了。因为源代码编译成静态库后,静态库里的东西已经是二进制代码了,是看不懂的。这样就能起到的保护程序员原创代码不被抄袭的风险。
现在我假设我写了一个实现加法的源代码 ADD.c 和 ADD.h 。那该如何生成静态库呢?
4.按住快捷键:ctrl+f5(开始编译),但会提示错误不过没啥大关系,因为生成的这个ADD.lib的文件不是应用程序所以运行不起来,这个 .lib 文件就是ADD的静态库。
5.下面我们去打开看看这所谓的静态库里面存放的到底是什么。
可见是一堆的乱码,所以其实把静态库卖出去也是没什么太大的关系的。
这份博客如果对你有帮助,给博主一个免费的点赞以示鼓励欢迎各位点赞评论收藏⭐️,谢谢!!!
如果有什么疑问或不同的见解,欢迎评论区留言欧。