<b>《深度摸索C++对象模子》读书笔记 最后一记</b>[VC/C++编程]
本文“<b>《深度摸索C++对象模子》读书笔记 最后一记</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
第6章主要报告了履行期语意学,主要内容是关于数组的在构建和析构是若何举行的.
第7章主要报告了有关Template的相关内容.
这两章内容散见于《Effective C++》、《More Effective C++》、《C++Primer》《C++Templates中 文版》等书籍,假如感爱好请阅读对应的书籍.
本读书笔记主要想谈一下对语意的理解.
本人认为C++程序计划可以简单分为三个层次:语法层、语言语意层(就像《深度摸索C++对象模子》所讲的语意)、程序语意层.
语法层是很简单理解的,也很简单学习的.讲授C++语法的书籍很多,随便找基本多学学便可以学会 .但是到达该层次只是到达了一个很初级的层次.比方我想保存五个整数,那么我写下int n1,n2,n3 ,n4,n5;是可以的,但是假如这么写,很有大概在今后的处理历程中会很麻烦;固然上述语句完好符 合C++语法要求.
实际上假如想很好地掌握C++语法也不是很简单的,需求深化阅读书籍和不断的实践.即便很好地掌握了C++大部份语法也只是方才走完万里长征的第一步.
比语法层高一级的是语言语意层.语言语意层是我自己创造的名次,那么什么是语言语意层呢?一个很好的注释就是写下的语句在符合语法之后按照该语言的具体实现也很好地符合了语意.假如说《C++ Primer》是讲C++语法的好书的话,那么《深度摸索C++对象模子》就是很好的讲授C++语言语意的书籍.语言语意可以简单理解为我们写的语句真实的语意.
比方我可以写下
class Test
{
public:
Test(wstring) : m_strName()//A
{
m_strName = _T(“”); //B
}
private:
Wstring m_strName;
}
此时我们初始化m_strName的办法有两种,办法A或B.固然A和B都符合语法的要求,但是那个更符合语 意的要求呢?当然是A语句了(具体缘由拜见深度摸索C++对象模子》一书),因此按照语意我们应当用A 语句.
本文章中所述的语言语意层就是指该内容,就是C++语言的语意.要想到达这个层次比到达上各层次 需求付出更多的勤奋和实践.固然这个层次不比上个层次难以到达,但是要想真的到达这个层次也还是 很简单的,只要勤奋便可以到达.
可以这样理解程序语意学:在符合语法和语言语意层的要求之后我们目前实现了某功效,但是我们所 采取的办法能否可改正性、可理解性、时间效率、空间效率等等的要求.假如说语言语意学是从语句或 者单个类的角度理解的话,那么程序语意学是从整个程序的高度去理解我们写的程序能否让人感到美好、文雅;能否能让人感到成就、感到满意.也就是说我们采取一个很好的筹划很好地办理了这个问题.
假如想到达这个层次就需求不懈的勤奋和杰出的悟性了.比方需求对一个大型数组举行排序那么采取冒泡的办法普通说来没有采取快速排序的好;再比方需求有一个可以保存某范例的数组,而该范例不肯定,那么采取保存void*指针和强迫范例转换的办法必定不如采取近似STL中vector的筹划好.以上两个例子简单关于了一下差别程序语意的差别.
山在远方,路在脚下,祝我们都能到达幻想的山顶.
以上是“<b>《深度摸索C++对象模子》读书笔记 最后一记</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |