讨论
我知道在C++中,main
函数可以成为一个class
的友元:
#include <iostream>
class foo {
friend int main();
int i = 4;
};
int main() {
foo obj;
std::cout << obj.i << std::endl;
}
然而,我认为虽然这是完全允许的,但它隐藏了许多危险。
问题
- 使
main
成为类的友元是否有价值的用途? - 声明将
main
作为类的友元应该被视为有害吗?
main
函数来说,这并没有什么不同于其他函数。 - Wyzardmain
声明为友元本身并没有什么问题,问题通常在于背后的原因。 - OMGtechy