gpt4 book ai didi

我可以重构这个吗?

转载 作者:行者123 更新时间:2023-11-30 17:37:07 26 4
gpt4 key购买 nike

我有structanalyzer_tanalyzers_t,其中有3个analyzer_t类型的变量。 analyzers_t 在代码中出现的次数较多,我必须将所有内容编写/调用 3 次,但差异很小。我附上 writeFiles 作为示例。任何人都可以给我一个线索,如果(如果,那么如何)我可以重构这个?我考虑将一个数组放入analyzers_t中。但正如我所说,我以某种不同的方式调用函数(请参阅 writeFiles 中的意思)。

typedef struct analyzer_t
{
unsigned char *buff;
size_t StartPosition;

}analyzer_t;


typedef struct analyzers_t
{
analyzer_t analyzer1;
analyzer_t analyzer2;
analyzer_t analyzer3;
unsigned char *Sequence;
}analyzers_t;



int writeFiles(char *name, analyzers_t *analyzers )
{
if (analyzers->analyzer1.StartPosition > 10)writeFile(name,
analyzers->analyzer1.buff, &analyzers->analyzer1.StartPosition, dir1);
if (analyzers->analyzer2.StartPosition > 10)writeFile(name,
analyzers->analyzer2.buff, &analyzers->analyzer2.StartPosition, dir2);
if (analyzers->analyzer3.StartPosition > 10)writeFile(name,
analyzers->analyzer3.buff, &analyzers->analyzer3.StartPosition, dir3);

return 1;
}

最佳答案

为什么不在您的 analyzers_t 中包含三个 analyzer_t 的数组,然后您可以迭代该数组并为每个数组调用相同的函数。

关于我可以重构这个吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22503755/

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