当非私有方法的参数是私有类型(例如私有嵌套类)时,g++和javac均不会发出警告。这样的方法无法被客户端使用,但可以作为类公共API的一部分显示。
在C++中,将这些方法放入类Foo的公共部分中,例如,可以允许其他类访问这些方法,而无需在类Foo内明确列出它们为友元(只要它们可以访问用作参数的私有类型)。
但通常情况下,不明确将这些方法设为私有是否不好的风格,还是可以忽略它(因为客户端无法使用它,所以没什么关系)。
在C++中,将这些方法放入类Foo的公共部分中,例如,可以允许其他类访问这些方法,而无需在类Foo内明确列出它们为友元(只要它们可以访问用作参数的私有类型)。
但通常情况下,不明确将这些方法设为私有是否不好的风格,还是可以忽略它(因为客户端无法使用它,所以没什么关系)。