在.getName()之前使用字符串;对于c ++

时间:2018-01-28 09:26:16

标签: c++

我想在.getName()

之前使用字符串
Enemy Troll(Troll, 250, 30); 

string enemyName;
enemyName = Troll;

enemyName.getName(); //this is causing the error... "No member named 'setHP' in 'std::__1::basic_string<char>'"

我希望能够获得与使用Troll.getName()相同的结果;但改为使用字符串。

2 个答案:

答案 0 :(得分:1)

在C ++中没有内置的方法可以使用字符串在C ++中查找同名的变量。

您需要做的是为自己创建适当的数据结构。一种方法是使用Monad[List]

map

答案 1 :(得分:0)

例如,您可以按名称将所有实例存储为地图中的静态数据成员。但是根据程序的完整设计,应该有更好的方法。但由于你没有提供所有上下文,我只是要展示一个通用的例子。有一些问题,如非线程安全,缺少空检查,不处理重复等等。

awk '$4!=7 && $5>30'  Input_file