Given following code:
namespace SomeNamespace
{
struct TypeInNamespace {int _x;};
class Interface
{
public:
virtual TypeInNamespace Method() = 0;
};
}
class ImplementationClass : public SomeNamespace::Interface
{
};
If you go to "Implement Virtual Methods..." and implement SomeNamespace::Interface in ImplementationClass, it generates code that doesn't compile because it omits the namespace for the return type:
class ImplementationClass : public SomeNamespace::Interface
{
public:
virtual TypeInNamespace Method() override
{
throw std::logic_error("The method or operation is not implemented.");
}
};
At first I thought it might be fixed in case=26956, but after re-testing it in build 2094 the issue is still there. Could this please be fixed in future releases? I use the Implement Virtual Methods feature quite a lot, but having to manually add namespaces to every line it generates kind of defeats the purpose.
Build number of Visual Assist: 2094
IDE and version you are using: Visual Studio 2012 update 5, Visual Studio 2015
Programming language(s) in which the problem occurs: C++