我使用C#語言,但我認爲這個問題不限於語言。 我有未來函數和方法返回形象的名字:您會建議如何返回不爲空的默認值?
public Func<string> GetImageNameFunc { get; set; }
private string getImageName()
{
if (GetImageNameFunc != null)
{
string imageName = GetImageNameFunc();
if (!string.IsNullOrEmpty(imageName))
{
return imageName;
}
}
return "default.png";
}
在過去的邏輯是下一個:
- 使用GetImageNameFunc功能覆蓋圖像名稱
- 返回null或空字符串指定,你需要使用默認圖像
現在我想給用戶一個更多的可能性:他必須能夠指定,即h e根本不想有圖像。所以,他必須能夠從函數中返回一些值,這意味着他不希望完全得到圖像:比方說,Image.None。
我想我可以使用一些常量像
public const string NoImageName = "|";
,這將有一個值是對個人形象不相稱,並在事件評論指定此常數。但我並不喜歡那種方式。
有什麼建議嗎?
返回一個定義的字符串(即'|')意味着這個功能的使用者必須能夠理解它的含義並在它看到它時做一些事情。既然如此,我只是堅持要返回'null'並處理該消費者中的默認圖像。通過消費者,這可能是同一個班級內的另一種方法。 – 2014-11-21 12:54:12
爲什麼不簡單地添加一個'bool'參數,詢問他是否想在沒有圖像時退出到默認值? – 2014-11-21 12:54:41