我有一个函数可以检查模式是否在提供的字符串内。该模式是预定义的,并且有很多可用,例如:
const char* a1 = "apple";
const char* a2 = "Orange";
const char* a3 = "mango";
const char* a4 = "grapes";
...
...
...
const char* an = "Banana";
PS:a1,a2,a3 都是 FRUIT 类的成员变量。并且赋值是在构造函数中完成的。我有这个功能:
void FindPattern(sample_String, predefined_string)
{
if(strstr(sample_string,predefined_string))
{
do sth...
}
else
do another thing
}
所以我怀疑创建一个表示predefstrings(a1到an)的枚举并将它们传递给函数并在switch case或其他地方分配“apple”“orange”值的更好方法。这种方法会比在构造函数中初始化使用更少的内存吗?