2010-10-22 45 views
0

我有Foo.hpp和Foo.cpp中,我想定义一个虚函数“虚拟”和头文件

virtual void setValue(int val){ 
} 

请问下面的实现是正确的:

Foo.hpp

#ifndef _FOO 
#define _FOO 
class Foo{ 
    public: 
    Foo(); 
    virtual void setValue(int val); 
}; 
#endif 

Foo.cpp中

Foo::setValue(){ 

} 

我意识到如果将它保存到一个文件中会更容易,但这只是对更复杂结构的简化。

+0

这是打算成为另一种类型的基类吗?也就是说,有一个从foo继承的酒吧? – 2010-10-22 17:27:13

+0

是的,这是最终尝试去做的。 – Kay 2010-10-22 17:33:14

+1

如果您对让语法正确感到困惑,我建议您阅读Kline提及的法律语法之一:http://www.parashift.com/c++-faq-lite/how-to-learn-cpp.html #faq-28.6我试图在没有这些书的情况下工作,在SO上提出关于语法和内容的问题,并发现这本书比任何人都能在这里更好地回答问题,并为我节省了很多时间。只是一点建议。 – 2010-10-22 17:43:30

回答

2

您的示例不会编译,因为您的cpp和hpp之间的函数签名不同,但您有正确的想法。如果你的函数是无效的,那么也不需要返回。

+0

糟糕的回报是一个错字,编辑它。 – Kay 2010-10-22 17:30:44