做的时候发现有在一个custom class中需要有个方法能实现对该class的所有member的access(当然包括private等等),在这个应用下,应该考虑是使用friend定义的机制,它提供独立访问所有该Class的private member的便利的同时,也可以保持与该class的独立性,可以方便的在其他的Class中的以public的声明实现该方法的funcition Body,也可以global的形式定义在一个文件里实现它的function(调用该方法以::fun完成)。C++里提供的static修饰有比较大局限,和本身class密切相关。
所以,对static可理解一个局部于文件的(在c++,就作用域就是一个class),friend可看作是全局的存储的公共单元,只要有声明它就可以使用,而他的定义或实现可依据具体的应用范围加以选择。
回复Comments
{commenttime}{commentauthor}
{CommentUrl}
{commentcontent}