it seems that the Create Method Implementations functionality can't handle the fact that a constructor is defaulted in the cpp file.
It keeps on proposing to create an implementation for the constructor.
So considering following sample code:
~MyClass() = default;
// cpp file
MyClass::MyClass() = default;
Create Method Implementations... proposes to create an implementation for the constructor, while there is an implementation in the cpp file.
It nicely sees that the destructor and foo() are already fine.
Replacing the = default by an empty body causes the implementation of the constructor to be seen.
Similar issue for the destructor: only in the header the = default is seen and treated correctly.
PS. working with Makefile C++ project.
VA_X.dll file version 10.9.2210.0 built 2017.03.08
DevEnv.exe version 14.0.25420.1 Professional
msenv.dll version 14.0.25431.1
Comctl32.dll version 6.10.7601.18837
Windows Server 2008 R2 6.1 Build 7601 Service Pack 1 (remote)
36 processors (x86-64, WOW64)
Language info: 1252, 0x409