在C ++中思考时遇到的friend迭代器和friend类迭代器有什么区别?

问题描述

| 在C ++卷1中的思考中,第16章:模板简介。 上下文:   请注意,不仅仅是说:
friend iterator; // Make it a friend 
  该代码具有:
friend class iterator; // Make it a friend
  这很重要,因为名称\“ iterator \”已在包含文件的范围内。 上面的Eckel到底是什么意思? 似乎
friend iterator
编译正确,我看不到差异。谁能告诉答案?谢谢     

解决方法

        根据C ++ 03标准第11.4节: 在类的朋友声明中应使用详尽的类型说明符。 因此,按照规范,编译器将警告您“ 3”的朋友声明必须是详细的类名。如果不是,则该编译器在此特定方面不符合该标准。 什么是精心设计的类型说明符? C ++使用详细的类型说明符来明确告知编译器将类视为类。我认为MSDN可以比我更好地解释它,因此请查看此详细解释。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...