int CStock::MergeKData( CStock &stock, int period ) { CKData * pkdata = NULL; CKData * pkdata2 = NULL; switch( period ) { case CKData::ktypeMonth: pkdata = &(GetKDataMonth()); pkdata2 = &(stock.GetKDataMonth()); break; case CKData::ktypeWeek: pkdata = &(GetKDataWeek()); pkdata2 = &(stock.GetKDataWeek()); break; case CKData::ktypeDay: pkdata = &(GetKDataDay()); pkdata2 = &(stock.GetKDataDay()); break; case CKData::ktypeMin60: pkdata = &(GetKDataMin60()); pkdata2 = &(stock.GetKDataMin60()); break; case CKData::ktypeMin30: pkdata = &(GetKDataMin30()); pkdata2 = &(stock.GetKDataMin30()); break; case CKData::ktypeMin15: pkdata = &(GetKDataMin15()); pkdata2 = &(stock.GetKDataMin15()); break; case CKData::ktypeMin5: pkdata = &(GetKDataMin5()); pkdata2 = &(stock.GetKDataMin5()); break; case CKData::ktypeMin1: pkdata = &(GetKDataMin1()); pkdata2 = &(stock.GetKDataMin1()); break; default: SP_ASSERT( FALSE ); return 0; } return pkdata->MergeKData( pkdata2 ); }