c++ - 我们可以在不分配内存的情况下调用类的成员函数吗?

标签 c++

我试过这个:

class A{
    void fun()
    {
        cout<<"Hello World";
    }
};

int main()
{
    A* obj;
    obj->fun();
}

它打印“Hello World”。但我还没有分配任何内存。

最佳答案

有问题的代码有未定义的行为,使用了不确定的指针值。

它可能会崩溃,或做任何事情,包括它可能会工作。

如果一个成员函数不需要一个实例,让它成为一个static成员函数;然后你可以像 A::fun() 那样调用它。

关于c++ - 我们可以在不分配内存的情况下调用类的成员函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25741239/

相关文章:

android - OpenSSL 库中的链接错误

c++ - 如何使用 Make 构建库并将其与源链接

c++ - CMake:target_include_* 中的 *.hpp 和 *.cpp

c++ - 指向成员的指针和指向成员函数的指针之间的VC++ 14模板歧义

c++ - 如何使用宏或元编程在 C++ 中创建 'passthru' 函数?

c++ - 在 LSP 中连接到 socks5 代理

c++ - 用于存储通用 lambda 的通用 std::function

c++ - 编写 Virtualbox 脚本以创建网络

c++ - 如何重构 C++ 代码以支持动态数组大小

c++ - 验证 STACK_OF(X509) 中的证书链