gpt4 book ai didi

c++ - 如何用它的内容替换字符串变量?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:11:26 25 4
gpt4 key购买 nike

我有一个字符串变量 var = "BaseClass",然后我必须用它在函数中的内容替换那个 var,例如我正在像这样调用 "BaseClass" 函数 BaseClass::func_name();现在我的问题是,如果我必须从名称存储在 var 字符串中的类调用函数,即 var::func_name(),我们可以用它的变量替换 var 变量吗?内容,并调用正确的类函数。

提前致谢。

最佳答案

不确定这是否是您所追求的,但您可以保留一个以名称作为键并将指向 BaseClass 派生对象的指针作为值的映射。省略了错误检查。

typedef std::map< std::string, BaseClass* > myMap;

class A : public BaseClass
{
void func();
}

class B : public BaseClass
{
void func();
}

myMap m;
A a;
B b;
m[ "A" ] = &a;
m[ "B" ] = &b;

std::string varName = GetVarNameFromSomeWhere();
m[ varName ]->func();

关于c++ - 如何用它的内容替换字符串变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5243670/

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