小编Iva*_*van的帖子

如何有效地计算定义指针的数量?

我有以下C++代码:

Some_class * temp1 = findTemp1(...); // returns NULL or a valid pointer
Some_class * temp2 = findTemp2(...); // returns NULL or a valid pointer
Some_class * temp3 = findTemp3(...); // returns NULL or a valid pointer
Run Code Online (Sandbox Code Playgroud)

现在我想计算其中有多少返回了一个有效的指针(0,1,2或3).

我能想到的唯一方法就是逐一测试它们:

int count = 0;
if (temp1)
   count++;
if (temp2)
   count++;
if (temp3)
   count++;
Run Code Online (Sandbox Code Playgroud)

对于三分球,它并不是太糟糕,但它不能很好地扩展.假设我没有重新定义findTempN函数(可能在计数器中传递),是否有更有效的方法?


非常感谢您的快速回复!不,我不会改变代码,我只是想知道我的其他选择是什么.我也意识到如果我使用这样的不同文字来定义3个指针,我就不能要求"可扩展"的东西.当然,我没有想到你回复的事情:)

c++ algorithm

7
推荐指数
1
解决办法
269
查看次数

标签 统计

algorithm ×1

c++ ×1