摘要:
下面是 Point class 的一个加法运算符的可能实现内容:class Point{ friend Point opsrator+(const Point&, const Point&);};Pointopsrator+(const Point &lhs, const Poi... 阅读全文
摘要:
nonmember friend 或 nonstatic member 或 static member 函数都会被转化为相同的形式, 因此三者的效率完全相同.另外, inline member function 的效率一直是最高的(前提是简单操作), 优化后的效率更是高, 这是因为编译器会将被视为不... 阅读全文
摘要:
先说一个事情, mangle 的意思是 vt.乱砍, 损坏; n. 碾压机。 这意味着 name mangling 就是要先把你精心想出的名字们碾碎, 再拼成独一无二的样子, 当然这么残忍的事情都是编译器瞒着你做的。一般而言, member 的名称前会被加上 class 名称, 形成独一无二的命名,... 阅读全文
摘要:
C++ 的设计准则之一就是: nonstatic member function 至少必须和一般的 nonmember function 有相同的效率。 这就是说, 如果我们在以下两个函数之间做选择:float magnitude3d(const Point3d *_this){...}float ... 阅读全文
摘要:
指向 data member 的指针是一个颇有用处的语言特性, 特别是如果你需要详细调查 class members 的底层布局的话。这个调查可以帮助你决定 vptr 是放在尾端还是起始处。 另一个用途是可以用来决定 clas 中 access sections 的次序。考察以下代码, 其中有一个 ... 阅读全文