2014-11-22 123 views
0

例如,我有wxWidgets框架的应用程序。它有很多类,需要相互通信(获取数据,调用一些程序等)。 你能告诉我一些依赖注入或在C++中不适用吗?C++中的依赖关系

在PHP中,我可以用get(id)写一些类,它将返回任何类型的对象。但是CPP具有很强的类型,所以一个函数可以返回单一类型的对象(超载是不是我想答案)

回答

0

你可以做一个函数与指针/引用打返回不同的类型: -

1 )在这种情况下,函数将返回基类型。

class Base; 
class Der1 : public Base 
class Der2 : public Der1 

Base* func() << It can return all objects in the heirarchy. 

2)从函数返回void *。

void* func() << It can return any type of object. 

但是在这种情况下,您需要小心使用static_cast转换回原来的指针。

+0

MyObj * p = func(“myobj”);会自动将指针转换为2个变体的MyObject,究竟是什么? – Neka 2014-11-22 11:28:35

+0

在C是的。但在C + +没有。你必须使用明确的演员。 – ravi 2014-11-22 11:29:55