範例
class
MyClass {
public
:
MyClass(){
logCreation();
}
virtual
void
logCreation()
const
= 0 ;
};
解決方案
請不要呼叫虛擬函數,使函數成為非虛擬,再傳遞基礎類別的參數來指定所需要的行為。
class
MyClass {
public
:
explicit
MyClass(
const
string& log){
logCreation(
log
);
}
void
logCreation(
const
string& log
)
const
;
};