|T O P I C R E V I E W
||Posted - Jan 20 2012 : 03:13:18 AM
"Implement Virtual Methods" is veeeery goood.
But very often I copy virtual methods from interface to my class, like:
void Test1() = 0;
void Test2() abstract;
and do "Create implementation".
Next i remove "= 0" or "abstract" and inster "override".
Maybe VA can do it?
|4 L A T E S T R E P L I E S (Newest First)
||Posted - Feb 29 2012 : 1:18:43 PM
case=64152 is fixed in build 1901 (same fix as case=3293)
||Posted - Jan 23 2012 : 12:03:54 PM
It is valid, and sometimes useful to give an abstract function an implementation. VA has no way of knowing if you want to keep your function abstract, or stop it being abstract, just because you have given it an implementation.
Is this something you often do? Converting an abstract function to a non abstract function?
||Posted - Jan 23 2012 : 01:08:27 AM
From implementation: yes, but not from declaration.
After create implementation in declaration "=0/abstract" is not needed ( more: undesirable :) )
||Posted - Jan 20 2012 : 7:23:24 PM
Are you aware of the Implement Interface refactoring command, which is designed to help here?
You can set this to add the override keyword with a registry key:
For me, when I trigger Create Implementation on the class member function:
virtual void testMemberZero() = 0;
the "= 0" is removed from the implementation. I have put in a bug report for "abstract" not being removed:
since that would clearly be a useful improvement.