请问一下有没有关于 C++ 文件组织方式的书籍 ???

ForesterX 2018-09-04 07:23:26
学了一段时间的C++ , 发现文件多了以后就是手忙脚乱了 , 友元类之间的文件包含 什么乱七八槽的, 一会儿就搞错 , 因此想请问一下有没有关于讲解 C++文件组织方式的书籍 , 谢谢大家了。
...全文
153 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2018-09-05
  • 打赏
  • 举报
回复
学习grep、sed、awk、……这类全文搜索和批处理编辑的工具。
srhouyu 2018-09-04
  • 打赏
  • 举报
回复
引用 3 楼 DO_HACKER 的回复:
[quote=引用 1 楼 srhouyu 的回复:]
友元用的是很少的,也就是运算符重载时候小范围地用一下。文件组织方式部分的内容真的不多,就那么几条原则,没搞清楚之前会误认为多。

或者你可以看看《大规模C++程序设计》


多谢 , 我看C++Primer 15 章的一个例子 , 文件组织方式总是绕不过来 :
Query是Quer_Base的友元 (friend class Query) , 也就是说不能在Query的头文件里面包含 Query_Base的头文件 , 但是当我在Query里面定义了一个指向 Query_Base 的智能指针的时候 , 使用class Query_Base 的前置声明, 编译以后告诉我智能指针不能指向不完全类型 , 意思就是说必须又在Query的头文件里面包含 Query_Base.h 了么 , 这不是前后矛盾么 、、、、 [/quote]


怎么就不能在Query的头文件里面包含 Query_Base的头文件了。
“包含头文件”的意思就是把头文件内容展开到当前位置。包含了就是相当于让Query_Base的定义放在Query前面而已。完全没有问题。
Query_Base里面在写friend class XXX的时候,它本身就是class XXX的前置声明的一种,所以不需要XXX的头文件。
ForesterX 2018-09-04
  • 打赏
  • 举报
回复
引用 3 楼 DO_HACKER 的回复:
[quote=引用 1 楼 srhouyu 的回复:] 友元用的是很少的,也就是运算符重载时候小范围地用一下。文件组织方式部分的内容真的不多,就那么几条原则,没搞清楚之前会误认为多。 或者你可以看看《大规模C++程序设计》
。,。 琢磨出来了 , 文件包来包去的太饶人了
ForesterX 2018-09-04
  • 打赏
  • 举报
回复
引用 2 楼 Slzde_sub 的回复:
感谢邀请,,但是真不知道有这种书 还是多敲代码 多练习 多做题来的实在 来都来了,给你推荐下我原来都看书顺序吧 c++primer plus effective c++,more effective c++,effective modern c++,effective stl(四本不是看一遍就可以结束的,要时常拿出来翻阅) 深度探索c++对象模型 stl源码po析,奇怪,,我记得念po的 怎么mac里找不到 愧对语文老师 c++标准库 c++templates c++沉思录 c++编程规范 另推荐一个官方常用查function网站 https://msdn.microsoft.com/library/
非常感谢你 , 那个我不是嫌看书麻烦 , 而且也有时间看完 , 我只是好奇这些个书看完少说也得1年以上吧感觉。。。
ForesterX 2018-09-04
  • 打赏
  • 举报
回复
引用 1 楼 srhouyu 的回复:
友元用的是很少的,也就是运算符重载时候小范围地用一下。文件组织方式部分的内容真的不多,就那么几条原则,没搞清楚之前会误认为多。 或者你可以看看《大规模C++程序设计》
多谢 , 我看C++Primer 15 章的一个例子 , 文件组织方式总是绕不过来 : Query是Quer_Base的友元 (friend class Query) , 也就是说不能在Query的头文件里面包含 Query_Base的头文件 , 但是当我在Query里面定义了一个指向 Query_Base 的智能指针的时候 , 使用class Query_Base 的前置声明, 编译以后告诉我智能指针不能指向不完全类型 , 意思就是说必须又在Query的头文件里面包含 Query_Base.h 了么 , 这不是前后矛盾么 、、、、
srhouyu 2018-09-04
  • 打赏
  • 举报
回复
友元用的是很少的,也就是运算符重载时候小范围地用一下。文件组织方式部分的内容真的不多,就那么几条原则,没搞清楚之前会误认为多。

或者你可以看看《大规模C++程序设计》

15,440

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧