【问题标题】:Is there a way to define an object using a function in C++? [closed]有没有办法使用 C++ 中的函数来定义对象? [关闭]
【发布时间】:2019-05-09 20:56:57
【问题描述】:

我有一个函数,它在用类定义对象后返回一个对象。当我调用该函数然后尝试对该对象执行任何操作时,它告诉我该对象未定义。有什么方法可以单独使用一个函数,然后使用该函数中定义的对象?

示例代码(假设类没有问题):

Class1 ReturnObject() {
    Class1 Object1(1, 2);
    return Object1;
}



int main() {
    ReturnObject();
    cout << Object1.ClassVariable1;
}

【问题讨论】:

  • 在问题的代码中,当 ReturnObject() 返回时,变量Object1 不再存在。您缺少范围的概念。 en.cppreference.com/w/cpp/language/scope
  • 我们不能在这里通过问答的方式真正教给你整个语言,你需要有条不紊地通过教科书或教程来学习语言。

标签: c++ function object scope


【解决方案1】:

有什么方法可以单独使用一个函数,然后使用该函数中定义的对象?

不,没有。

通过在函数内定义类,您将其范围限制在仅在函数内。

【讨论】:

    猜你喜欢
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 2021-02-12
    • 2023-02-15
    • 2021-10-30
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多