愚蠢的问题:通过价值传递这个最好的方法是什么?通过值传递
背景:让我们用汽车和汽车选项。我曾经有福特(FordOptions),本田(HondaOptions)等构造商。所有汽车都来自Car,CarOptions的所有选项。我曾经有一家汽车工厂通过一个指向CarOption的指针,检查类型,生成相应的汽车,并返回一个指向通用汽车的指针。
现在我已经改变了这一点,以便CarOption具有虚拟ProduceCar返回车上,每个人车选项实现其特定的生产。所以当我得到一个通用的指向汽车选项的指针时,我只需调用CarOptions.ProduceCar并获得一个通用汽车指针。
这是所有正常,除了在说执行FordOption.ProduceCar我需要的FordOption实例传递给福特的构造函数。我可以通过传递“this”并更改Ford的构造函数来接受指向FordOptions而不是FordOptions的指针。不过,我希望它能够通过价值或至少参照来考虑FordOptions,但是很难这样做。一个简单的答案,我敢打赌,
长的问题。谢谢。
而不是试图描述你的代码,你可以发布一个简单的例子吗? – 2011-05-26 13:48:49
新的编辑使答案看起来不正确。 OP想知道如何传递当前对象(由'this'指向),而不是如何传递'this'指针。 – 2011-05-26 14:15:22
这不是一个愚蠢的问题,它只是一个初学者的问题。这没什么错。 – 2011-05-26 14:25:01