TarsCloud / TarsCpp

C++ language framework rpc source code implementation
BSD 3-Clause "New" or "Revised" License
517 stars 254 forks source link

希望去掉所有头文件及生成头文件中的using namespace std #278

Open morebtcg opened 1 year ago

morebtcg commented 1 year ago

tars的大量头文件中使用了using namespace std,tars2cpp生成的头文件也不例外 不仅仅是std,有些地方还using namespace tup

目前只要包含了这些头文件,就会导致部分项目编译失败

希望能去掉tars源码中所有的using namespace,tarscpp增加一个生成选项,允许生成不带using namespace的头文件代码

ruanshudong commented 1 year ago

是有这个问题, 但是一旦改动会导致历史业务服务代码都编译不过, 所以为了兼容历史就一直没有调整了

morebtcg commented 1 year ago

tars框架自身代码的std可以去掉,理论上不影响历史,如果真有历史代码依赖了tars框架的std,那也可以做成tars框架编译选项 tars2cpp可以增加选项(默认关),打开后才去掉std,这样就可以兼容历史代码了