【问题标题】:A function to set a value to a "label"将值设置为“标签”的函数
【发布时间】:2015-03-20 05:33:19
【问题描述】:

所以我想写一个函数来为自己设置值。下面是一个“正在运行”的函数示例。

 setToValue(height, 62.7);

 setToValue(weight, 155);

如果我知道从哪里开始,我就不会在这里发帖了。但这就是我得到的。我以为在这里很容易得到答案,猜不出来。

double setToValue(string label,double value)
  {
    label = "value";
    return 0;
  }

【问题讨论】:

  • 什么!!!用更多细节解释它。给自己设置值是什么意思(你的意思是返回值吗?)。
  • 据我所知大概是这样?基本上我想要的只是将变量高度设置为第二个参数中的值。 @ArunA.S
  • 第一个参数通过引用传递第二个参数,并在函数内部设置第一个到第二个
  • 有一个例子@samgak
  • void setToValue(double& label,double value){label = value;}

标签: c++ function


【解决方案1】:

您可以通过传递标签作为参考轻松做到这一点(我希望label 是双精度而不是字符串)。方法如下

void setToValue(double &label , double value )
  {
    label = value;
  }

请注意,您不需要将函数设为 double 类型,因为它不会返回任何有用的东西(这只是一种浪费)。

或者,你可以这样做

void setToValue(string &label,string value)
  {
    label = value;
  }

  int main()
   {
    string label;
    setToValue(label,"25.25");
    cout<<label;    
   }

【讨论】:

    【解决方案2】:

    通过引用传递第一个参数,通过值传递第二个参数,并在函数内部将第一个参数设置为第二个,例如:

    void setToValue(double& label,double value)
    {
         label = value;
    }
    

    【讨论】:

      【解决方案3】:

      基本上你想将双精度转换为字符数组(或字符串)?

      使用 sprintf:

      sprintf(height,"%f",0.344);
      

      完成!

      【讨论】:

        猜你喜欢
        • 2013-09-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多