0
struct Widget {
    void test() {}
};

int func() {}

int main() {
    std::cout << &Widget::test << std::endl;
    std::cout << Widget::test << std::endl;
    std::cout << func << std::endl;
    std::cout << &func << std::endl;
}

このコードでは、main 関数の 2 行目だけがコンパイルされません。他の人は印刷します1。なぜそれは印刷されますか1。関数のアドレスを出力すべきではありませんか? そして、なぜ2番目はコンパイルされず、最初はコンパイルされるのですか?

4

1 に答える 1