软件人生感触之三 so与全局变量

来源:互联网 发布:java用ftp上传文件 编辑:程序博客网 时间:2024/05/14 00:33

之前听过很多关于全局变量的传闻,如下:
A:这是个好东东,定义后extern一把,别的模块都可以使用,真是方便;
B:还是慎用吧,全局变量做了修改,周边一概不知,出了错误很难定位。

自己很快由A粉转为B粉。

例如M程序使用两个动态库,A和B,不幸的是,两者定义了名字相同的全局变量,A是编译链接,B是dlopen打开,那么全局变量就存在被覆盖的情况,导致不可预知的错误。

根据现在的程序观:so最好不要用全局变量,要是执迷不悟要用的话,用static修饰,然后通过函数封装访问。