C++ 允许在构造函数中创建新变量

C++ 允许在构造函数中创建新变量,c++,constructor,C++,Constructor,我想知道在构造函数中创建临时变量是否允许/良好实践?我只需要函数返回值的变量 比如: class A { private: int var; public: A(); }; A:A() { var = 0; int tmp_var = somefunction(); ... Some Code ... } 这不是好的做法,也不是坏的做法。当你需要在某处存储一个值时,这只是你所做的事情之一。这不是好的做法,也不是坏的做法。当你需要在某个

我想知道在构造函数中创建临时变量是否允许/良好实践?我只需要函数返回值的变量 比如:

class A
{
  private: 
    int var;
  public:
    A(); 
};

A:A()
{
   var = 0;
   int tmp_var = somefunction();
   ...
   Some Code
   ...
}

这不是好的做法,也不是坏的做法。当你需要在某处存储一个值时,这只是你所做的事情之一。

这不是好的做法,也不是坏的做法。当你需要在某个地方存储一个值时,这只是你要做的事情之一。

你甚至可以创建一个静态值。构造函数只是一个在开始时调用的函数。

您甚至可以创建一个静态函数。构造函数只是一个在开始时调用的函数。

可能是的,这没有问题。临时变量将在构造函数结束时超出作用域。可能重复“是”,这没有问题。临时变量将在构造函数结束时超出范围。