Rhy*_*den 9 c++ constructor return-value
只是一个简单的问题.
我写了一些返回自定义类Command的代码,我写的代码似乎工作正常.我想知道是否有任何理由我不应该这样做.它是这样的:
Command Behavior::getCommand ()
{
char input = 'x';
return Command (input, -1, -1);
}
Run Code Online (Sandbox Code Playgroud)
无论如何,我读到构造函数不具有返回值,但这在g ++中有效.
谢谢你的建议,
里斯
构造函数本身没有返回值.这样做是构造一个临时Command对象并将构造的objet返回给调用者.它实际上和你说的一样:
Command temp(input, -1, -1);
return temp;
Run Code Online (Sandbox Code Playgroud)
它适用于任何C++编译器.