摘要: c/c++的头文件是一种很落后的编译机制,大量程序员在这上面浪费了无数生命理论上,只要两个类之间不存在互相包含的关系,那么编辑就应该能通过但是头文件机制却给我们造成了无数的麻烦,因为我们还要避免头文件之间的互相包含比如现在有两个类A,B,分别在a.h b.h里面如果现在AB都要依赖对方,那么a.h,b.h互相包含肯定是不行的,这个时候只有使用前置声明,但是如果作为类成员使用了对方声明的一个struct呢?那么只好把这个共用的类提到另一个头文件c.h里面,大家再去包含c.h,这样就产生了一个新的文件但是如果有更多的类,更多的头文件呢?结果是文件越来越多,改动的代价也越来越大,不胜其烦这样当然也有 阅读全文
posted @ 2013-03-27 11:41 mightofcode 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 这是前几天跟一个同事合作的感慨宏:他写的代码用了一些很难看的宏,实际完成的却是很简单的功能,但是宏难以调试其实用模板也可以实现,而且好调试一点,当然这里最好还是写最直接的代码比较好无意义的封装:几个函数就能解决的问题,却用类封装了好几层,却由于对c++没有深刻理解,没有封装好,搞出bug来了,调试了7个小时,浪费了4个人总共4x7小时keep it simple,stupid,这是诸多unix哲学里面最好用的一条了,保持简单傻瓜,多快好省地写代码! 阅读全文
posted @ 2013-03-27 11:15 mightofcode 阅读(166) 评论(0) 推荐(0) 编辑