【问题标题】:Function call in another function using same parameter received使用接收到的相同参数在另一个函数中调用函数
【发布时间】:2017-01-06 16:33:04
【问题描述】:

假设我有一个函数调用functA() 和另一个辅助函数HelperFunc()

public void functA(int i, Obj a)
{
   HelperFunc(a);
}

public void HelperFunc(Obj a)
{
    //do something with Obj a
}

我可以将functA()收到的参数传递给HelperFunc()吗?如果是这样,这是一个好的做法还是有其他好的选择?

【问题讨论】:

  • 是的,你可以。这是好习惯吗?可能是。没有上下文就不能说。
  • 帮助函数通常是静态的。并且是类私有的(如果它只属于那个类)。或另一个静态类中的静态公共(如果它的意思是全局使用)。
  • @M.kazemAkhgary 为什么辅助函数是静态的?一个函数被另一个函数独占使用与它是否是静态的无关。如果它不需要实例成员,它就是静态的,如果它需要,它就是一个实例方法。当然,它是私有的,对于它只是一个辅助函数来说是非常重要的。它是公开的,表明它在其他函数的上下文之外很有用。
  • @Servy 我没有将实例方法算作辅助函数,因为它们使用实例,所以它们是类的一部分,而不是辅助函数.. 不是帮助函数 :D ......但是你的辅助功能的定义是专业的,所以我很欣赏。嗯,我改变主意了

标签: c# logic


【解决方案1】:

你当然可以!

“良好实践”取决于具体情况以及您通过它的原因。有时这是绝对必要的。

【讨论】:

    【解决方案2】:

    是的,这很好用。是的,这是常见的做法。我们需要更好的情境背景才能提出更好的替代方案。

    如果它有助于你的理解,请记住你的“Main”也只是一个函数,你当然可以将参数从 Main 传递给其他函数。

    【讨论】:

    • 谢谢你们的反馈!
    猜你喜欢
    • 2019-02-19
    • 1970-01-01
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 2017-02-17
    • 2017-07-19
    • 1970-01-01
    相关资源
    最近更新 更多