【发布时间】:2014-07-31 00:52:33
【问题描述】:
我是否可以通过下面的类传递参数。
class cat
{
public:
void dog(int ID, const char *value) // int ID I'd like to be the index array it was called from?
{
debug(ID, value);
}
};
cat cats[18];
cats[1].dog("value second arg, first arg auto filled from index array");
【问题讨论】:
-
既然您仍然指定索引 (
cats[1]),是什么阻止您在方法调用中再次这样做?您是否打算像指针cat *p = cats; p->dog(...);一样行走并以某种方式推断索引? -
我不想那样做,我想基本上在那里有一个变量,将它存储在数组中,例如。有 18 个客户端,如果有人调用该选项,我想将其存储在数组中的 clientIndex 编号
-
为什么在
cat中没有成员ID(在构造时只填写一次),然后在所有其他方法中避免它? -
告诉我你会怎么做,因为我想我知道你在说什么,但我想确定
-
@HorseFrog 啊,我明白了,正如你所写的,包含的序列是不相交的。
cats数组中的cats 与位置无关,这是理所当然的。如果没有每个实例中包含的属性或用于访问的无包装函数,这是不可能的。
标签: c++ class parameter-passing