gpt4 book ai didi

c++ - 如何将表达式作为参数/参数传递?

转载 作者:太空宇宙 更新时间:2023-11-04 15:47:09 24 4
gpt4 key购买 nike

假设我有一个多项式函数 f(x),我想将此表达式用于表达式 g(x) 或 h(x),具体取决于用户的选择。这可能吗?

例如

int main() {

float fexpression = /* polynomial function f(x) here */;

/* some code where user picks g(x) or h(x) */

if (/* gexpression == true */)
cout << gfunction(fexpression);
else /* h expression == true */
cout << hfunction(fexpression);

return 0;
}

float gfunction(float j){

float var = /* some function representing g(f(x)) == g(j) */;
return var;
}

float hfunction(float j){
float var = /* some function representing h(f(x)) == h(j) */;
return var;
}

在我看来我可以传递一个表达式变量,例如

float fexpression = ....

最佳答案

你想要一个 function pointer .

使表达式成为一个函数。

float fexpression( float x )
{
return (5*(pow(x,4))) + (3*(pow(x, 3))) + (10 * x) - 5
}

您编写的这段代码随后将传递功能本身。

   if (/* gexpression == true */)
cout << gfunction(fexpression);
else /* h expression == true */
cout << hfunction(fexpression);

关于c++ - 如何将表达式作为参数/参数传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14743007/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com