2017-07-03 6 views
-4

私はTreeHouse Goの課題を解決する必要がありますが、私はPrintメソッドに固執しています。次のゴランの課題をどのように解決しますか?

要件:clockcalendarパッケージで

、我々はあなたがそれらを印刷するために呼び出すことができますDisplay方法を持っているどちらも、ClockCalendarタイプを定義しました。 scheduleパッケージでは、ClockCalendarタイプの両方でDisplayメソッドが満たすDisplayableインターフェイスを定義します。 clockまたはcalendarパッケージに何も変更を加えないでください。scheduleパッケージの場合は、Displayableの値を持つPrint関数を定義し、Displayを呼び出します。

clock.go:

package clock 

import "fmt" 

type Clock struct { 
    Hours int 
    Minutes int 
} 

func (c Clock) Display() { 
    fmt.Printf("%02d:%02d", c.Hours, c.Minutes) 
} 

calendar.go:

package calendar 

import "fmt" 

type Calendar struct { 
    Year int 
    Month int 
    Day int 
} 

func (c Calendar) Display() { 
    fmt.Printf("%04d-%02d-%02d", c.Year, c.Month, c.Day) 
} 

schedule.go:

package schedule 

// DECLARE A Displayable INTERFACE HERE 
type Displayable interface { 
    Display() 
} 

// DECLARE A Print FUNCTION HERE (I'm stuck here) 

ありがとうございます!

答えて

2
func Print(d Displayable) { 
    d.Display() 
} 
+0

私は前に同じことを試みましたが、うまくいきませんでしたが、コピーして貼り付けたときに機能しました。タイプミスがあったかもしれません。 ありがとうございました! –

関連する問題