SendInfoTo(NetState, bool, bool)’ возвращает значение void, ключевое слово return не должно сопровождаться выражением объекта

#c#

Вопрос:

Это может быть самым простым решением для тех, кто имеет представление о том, что они делают. для меня, человека, который понятия не имеет из-за того, что все еще изучает основы, я в тупике. Я пришел на этот сайт, чтобы продолжить свое обучение на C#, так как каждая ошибка, которую я гуглю, чтобы узнать, что происходит, приводит меня сюда. В любом случае, вот мои строки, которые способствуют ошибке вместе с самой ошибкой.

код

         public override void SendInfoTo(NetState state, bool sendOplPacket)
    {
        if (state.Mobile != null amp;amp; ((m_Placer != null amp;amp; state.Mobile.Serial.Equals(m_Placer.Serial)) || state.Mobile.AccessLevel >= AccessLevel.Administrator))
            SendInfoTo(state, sendOplPacket, false);
    }

    void SendInfoTo(NetState state, bool sendOplPacket, bool doChecks)
    {
        if (doChecks)
        {
            if (state.Mobile == null ||
                ((m_Placer == null || !state.Mobile.Serial.Equals(m_Placer.Serial)) amp;amp;
                 state.Mobile.AccessLevel < AccessLevel.Administrator))
                return false;
        }
 

ошибка

Поскольку «BaseFactionTrap.SendInfoTo(NetState, bool, bool)» возвращает значение void, ключевое слово return не должно сопровождаться выражением объекта

Ошибка возникает из строки «вернуть false;» в конце кода. Мы будем очень признательны за любую помощь или руководство.

Заранее спасибо.

Комментарии:

1. Похоже, функция void возвращает значение false. Если вам нужно проверить, работает ли он, может быть, сделать его bool SendInfoTo?

2. Может быть, вы имели в виду return; ?

3. return false; скомпилирован с 0 ошибками, но это вызывает проблемы с игровым процессом.

Ответ №1:

Ваш метод SendInfoTo объявлен как void . Это означает, что он не может возвращать какое-либо значение.

Но вы пытаетесь вернуться false . Это невозможно, отсюда и ошибка.

Вы должны либо объявить метод с помощью оператора return. например

 bool SendInfoTo(NetState state, bool sendOplPacket, bool doChecks)
{
...
}
 

Или ничего не возвращать.

Но затем вы должны что-то сделать с этим возвращенным значением

Комментарии:

1. После изменения void SendInfoTo(NetState state, bool sendOplPacket, bool doChecks) на bool SendInfoTo(NetState state, bool sendOplPacket, bool doChecks) я получаю эту ошибку. Я попытался поиграть с ним сам, прежде чем вернуться сюда, но безуспешно. «SendInfoTo(NetState, bool, bool)»: не все пути кода возвращают значение»