2015-06-07 2 views
-4

Это мой первый вопрос. Пожалуйста, поправьте меня, если у меня есть какая-то ошибка. THXКак обновить возвращаемое значение метода другим методом?

//Form.cs 
Sweet sweet = new Sweet(); 
Donut donut = new Donut(); 
//classify the condition with int i; 
if (i==0) 
    score.Text=sweet.TambahPoin().ToString(); 
else if (i==1) 
    score.Text=donut.DoublePoin().ToString(); 

Это родительский класс

class Sweet 
{ 
    //field 
    int m_poin; 

    //properties 
    public int Poin 
    { 
     get{return m_poin;} 
     set 
     { 
      if (value < 0) 
       m_poin = 0; 
      else 
       m_poin = value; 
     } 
    } 

    //Method 

    public int TambahPoin() 
    { 
     Poin += 10; 
     return Poin; 
    } 
} 

Я хочу, чтобы метод, который будет удвоить TambahPoin() с условием, что добавит счет раньше. , если начальный Poin = 100, а затем вызов метода TambahPoin() станет 110 после этого, я хочу вызвать метод DoublePoin, чтобы оценка стала равной 110 + 20 = 130. (Я уже пробовал с моим собственным решением, но оценка становится 20 не 130)

+0

Пожалуйста, разместите свой полный код. – user35443

+0

От: return Poin; To: return m_poin; – jdweng

ответ

0

вы, вероятно, хотите что-то вроде этого:

public int TambahPoin() 
{ 
    m_poin += 10; 
    return m_poin; 
} 

public int DoublePoin() 
{ 
    for (int i = 0; i < 2; i++) 
    { 
     TambahPoin(); 
    } 
    return m_poin; 
} 

public int IncreasePoin() 
{ 
    if (m_poin == 100) TambahPoin(); 
    DoublePoin(); 
    return m_poin; 
} 

Внутри класса вы можете работать с частными полями и быстрее, потому что вы не вызывая методы получения/установки из свойств.

Смежные вопросы