Skip to content

Commit

Permalink
JDWinMain: Fix calling virtual function from the ctor and dtor (#381)
Browse files Browse the repository at this point in the history
JDWinMainはコンストラクタ・デストラクタ内で仮想関数set_xxx(), get_xxx()
を呼び出していますが仮想関数はコンストラクタ・デストラクタ内で
派生クラスの関数として呼び出しできないためcppcheckに警告されます。
そのためスコープ解決演算子を使ってクラスを明示します。

cppcheckのレポートは #381 を見てください。
  • Loading branch information
ma8ma committed Jul 4, 2020
1 parent 37427c5 commit b2db156
Showing 1 changed file with 11 additions and 10 deletions.
21 changes: 11 additions & 10 deletions src/winmain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ JDWinMain::JDWinMain( const bool init, const bool skip_setupdiag,
{
#ifdef _DEBUG
std::cout << "JDWinMain::JDWinMain init = " << init << std::endl
<< "x y w h = " << get_x_win() << " " << get_y_win()
<< " " << get_width_win() << " " << get_height_win() << std::endl;
<< "x y w h = " << JDWinMain::get_x_win() << " " << JDWinMain::get_y_win()
<< " " << JDWinMain::get_width_win() << " " << JDWinMain::get_height_win() << std::endl;
#endif

setlocale( LC_ALL, "ja_JP.UTF-8" );
Expand All @@ -61,23 +61,23 @@ JDWinMain::JDWinMain( const bool init, const bool skip_setupdiag,
bool cancel_maximize = false;
if( init_w >= 0 ){
cancel_maximize = true;
set_width_win( init_w );
JDWinMain::set_width_win( init_w );
}
if( init_h >= 0 ){
cancel_maximize = true;
set_height_win( init_h );
JDWinMain::set_height_win( init_h );
}
if( init_x >= 0 ){
cancel_maximize = true;
set_x_win( init_x );
JDWinMain::set_x_win( init_x );
}
if( init_y >= 0 ){
cancel_maximize = true;
set_y_win( init_y );
JDWinMain::set_y_win( init_y );
}
if( cancel_maximize ){
set_maximized_win( false );
set_full_win( false );
JDWinMain::set_maximized_win( false );
JDWinMain::set_full_win( false );
}

// サイズ変更
Expand Down Expand Up @@ -109,8 +109,9 @@ JDWinMain::JDWinMain( const bool init, const bool skip_setupdiag,
JDWinMain::~JDWinMain()
{
#ifdef _DEBUG
std::cout << "JDWinMain::~JDWinMain window size : x = " << get_x_win() << " y = " << get_y_win()
<< " w = " << get_width_win() << " h = " << get_height_win() << " max = " << is_maximized_win() << std::endl;
std::cout << "JDWinMain::~JDWinMain window size : x = " << JDWinMain::get_x_win()
<< " y = " << JDWinMain::get_y_win() << " w = " << JDWinMain::get_width_win()
<< " h = " << JDWinMain::get_height_win() << " max = " << JDWinMain::is_maximized_win() << std::endl;
#endif

if( m_core ){
Expand Down

0 comments on commit b2db156

Please sign in to comment.