一千萬個為什麽

搜索

C#メソッドを利用する

答えが単純であるか、私が愚かなミスをしたならば、私はプログラミングでそれほど経験がないので申し訳ありませんより。フライト番號、目的地、出発、出発日時、到著日時というプロパティを持つクラスを作成しました。

すべてのプロパティを持つコンストラクタとフライト番號だけを持つコンストラクタです。

飛行時間を計算してそれを私に返す方法を作る必要があります。よく私はメソッドを作成しましたが、メインのメソッドを利用する方法がわかりません。

これがクラスファイルの外観です。

    namespace Les1Vlucht
{
    class Vlucht
    {
        public int Vluchtnummer;
        public string Bestemming;
        public string Vertrek;
        public DateTime DTVertrek;
        public DateTime DTAankomst;


        public Vlucht(int vluchtnummer, string vertrek, string bestemming, DateTime dtvertrek, DateTime dtaankomst)
        {
            Vluchtnummer = vluchtnummer;
            Vertrek = vertrek;
            Bestemming = bestemming;
            DTVertrek = dtvertrek;
            DTAankomst = dtaankomst;
        }

        public Vlucht(int vluchtnummer)
        {
            Vluchtnummer = vluchtnummer;
        }

        public void berekenVluchtDuur(string vertrek, string aankomst)
        {
            TimeSpan vluchtduur = DTAankomst - DTVertrek;
        }
   }
}

このメソッドではvoidを使用します。これは戻り値がないことを意味しますが、返させたいのはTimeSpanです。私がTimeSpanを次のように使用するならば: public TimeSpan berekenVluchtDuur(文字列vertrek、文字列aankomst)それはすべてのコードパスが値を返すというわけではないと言う。

これが実行の様子です。

namespace Les1Vlucht
{
    class Program
    {
        static void Main(string[] args)
        {

            Vlucht V1 = new Vlucht(896, "Antwerpen", "London", DateTime.Now, DateTime.Now.AddHours(4));

            TimeSpan vluchtduur = V1.DTAankomst - V1.DTVertrek;
            Console.WriteLine("Vlucht " +V1.Vluchtnummer +" vliegt van " +V1.Vertrek +" naar" +V1.Bestemming +". Vertrek om " +V1.DTVertrek +" en aankomst om " +V1.DTAankomst);
            Console.WriteLine("vluchtduur: " +vluchtduur);
        }
    }
}

今すぐ上で私たちはそれが動作するかどうかを確認するためだけにクラスファイル內のメソッドから同じコードを使用していることがわかります。私の質問は、作成したオブジェクト V1 にクラスで定義されているメソッドをどのように適用して実行できるかです。

任意の助けは大歓迎です。

最佳答案

public TimeSpan berekenVluchtDuur(DateTime vertrek, DateTime aankomst)
{
    TimeSpan vluchtduur = aankomst- vertrek;
    return vluchtduur;
}

主に

var timespan1 = V1.berekenVluchtDuur(vertrek, aankomst)

轉載註明原文: C#メソッドを利用する