C ++と友情

面白い事実を発見しました。C++のクラスには架空の友人がいることがわかりました。 例:

class Fred { <br>
friend class Joe; <br>
public : <br>
void dance() { <br>
//- <br>
} <br>
}; <br>
<br>
int main () { <br>
Fred guy; <br>
guy.dance(); <br>
return 0; <br>
} <br>
// <br>


プログラムにはJoeクラス宣言はありませんが、プログラムはエラーなしで(および警告なしで)コンパイルされることに注意してください。 つまり、ジョーは存在せず、フレッドの架空の友人と呼ぶことができます。 友情関係は、友人によって宣言されたクラスのコンパイルにのみ影響するため、これは可能です。 そして、誰かが友人であると宣言するクラスは、彼らの友人が何であるか、彼らが存在するかどうかに関係なく、同じ方法でコンパイルされます。


Source: https://habr.com/ru/post/J63559/


All Articles