尝试在eclipse CDT中提取函数时“选择中的声明太多”错误消息

时间:2012-11-08 08:00:30

标签: c++ eclipse refactoring eclipse-cdt

我正在使用最新的Juno CDT版本,我正在尝试探索其中的CDT重构工具。 通常,当尝试将一段代码提取到单独的函数中时,我看到错误: “选择中的声明过多。”我不知道该怎么办 似乎是这种情况的特征是在堆栈上有许多对象创建(也许还有动态分配 - 我不确定)。

有人知道如果有多于x个对象声明,重构机制为什么会关心? 重构此类代码的最佳做法是什么?

1 个答案:

答案 0 :(得分:1)

我猜你在问题中混淆了堆栈,后者更有意义。

在您要提取的代码段之前看到的任何堆栈变量都将更改为提取的函数的参数。我想如果它们太多你会得到这个错误信息。如果想要一个具有5个以上参数的函数,那就值得怀疑。