函数、数组和指针

Function , array and pointers

本文关键字:指针 数组 函数      更新时间:2023-10-16

我有一种情况,一个函数只能取"int"(不能改变这一点),而我在另一种情况下需要它。让我直接写代码

bool foo(int dev) 
{
         ...
         ...
      return true/false;
}

我需要通过:

  1. mClassPointer->dev()
  2. mClassPointer[index]->dev()
  3. dev() //(function)
  4. 和明显的CCD_ 4

mClassPointer是指向类的指针。dev()是一个类的成员函数,返回一个Integer。

如果您有一个函数需要在不同的情况下处理不同的数据类型(正如您的问题中含糊地暗示的那样),那么您可能需要研究模板。

您可以通过将参数更改为void*来实现这一点。

要非常小心,仔细阅读这篇文章,espc。Loki Astari的帖子:

错误:从';void*';到';int';失去精度

如果函数只接受int,那么我不知道这是否可能。如果您正在考虑将指针投射到int并传递,请阅读本线程中的讨论。可能在某些平台上不起作用:将指针转换为整数