gpt4 book ai didi

c++ - 使用派生类中的成员在父类中初始化 std::function

转载 作者:太空宇宙 更新时间:2023-11-04 16:13:16 26 4
gpt4 key购买 nike

我有一个看起来像这样的父类:

class Parent
{
Parent(std::function<double(double)> func);
};

和一个看起来像这样的派生类:

class Derived : public Parent
{
const double val;

double MyFunc(double x)
{
return x / val;
}

Derived(double value)
: Parent(std::function<double(double)>(&Derived::MyFunc)),
val(value)
{
}
};

基本上,我想在派生类中限制来自父类的func。我知道为什么我上面所做的不起作用;我已经尝试了各种其他的东西,比如制作 MyFunc static;然而,这没有帮助,因为那样我就不能使用 value,这又是有道理的......

有什么好的方法可以做到这一点吗?

谢谢。

最佳答案

改变这个

    : Parent(std::function<double(double)>(&Derived::MyFunc)),

    : Parent(std::bind(&Derived::MyFunc, this, std::placeholders::_1)),

关于c++ - 使用派生类中的成员在父类中初始化 std::function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25701767/

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