簡體   English   中英

方法必須在我的代碼中具有指向NewCall Handler類的返回類型。 我在想什么

[英]method must have a return type pointing to NewCall Handler class in my code. What am i missing

在該類中,我定義了一個稱為NewCallHandler的方法。 即使我在另一個方法中調用此函數,但它給我錯誤: 方法必須具有return type

class CallHandler
{

      public NewCallHandler(ICall call)
       {
        _call = call;
        _phoneCallAudioSender = new PhoneCallAudioSender();
        _phoneCallAudioSender.AttachToCall(call);
        _mediaConnector = new MediaConnector();
        _greetingMessageTimer = new Timer();
        _greetingMessageTimer.Elapsed += greetingMessageTimer_Elapsed;
        _greetingMessageTimer.Interval = 15000;
       }

在lowerMenu的此方法中,我在var變量中調用NewCallHandler函數

private void LowerMenu()
    {
        _call.CallStateChanged -= call_CallStateChanged;
        _call.DtmfReceived -= call_DtmfReceived;
        _greetingMessageTimer.Elapsed -= greetingMessageTimer_Elapsed;

        var  newCallHandler = NewCallHandler(_call);
        newCallHandler.BlindTransferNumber(_blindTransferNumber);
        newCallHandler.Completed += newCallHandler_Completed;
        newCallHandler.Start();
    }
}

我知道這個問題曾經被問過,但是找不到解決我問題的方法。 請在這件事上幫助我。 謝謝

看來您是在實例化方法內部的類級別變量的方式定義了構造函數。 您甚至似乎在進行依賴項注入,因此我很確定這是要用作構造函數。

構造函數名稱必須與類相同。 您應該將構造函數重命名為:

public CallHandler(ICall call)

然后,您可以通過以下方式調用它:

var callHandler = new CallHandler(_call);

注意new關鍵字。

除了構造函數,所有方法都必須具有返回類型。 編譯器會發現您的方法由於名稱而不是構造函數,並假定它是普通方法,並產生您看到的錯誤。

方法必須聲明一個返回類型,或者如果您不希望該方法返回任何內容,則必須使用關鍵字void。

因此將其更改為:

public void NewCallHandler(ICall call)

您是否希望使用該方法? 如果不是,則需要在公開后使用void,否則需要輸入需要返回的類型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM