我在下面的代码中收到了这个错误.这个+符号在C#中不可用吗?
错误:运算符'+'无法应用于'System.date.time'和'char'类型的操作数
return StartDate +';'+EndDate;
Run Code Online (Sandbox Code Playgroud)
编辑:
在答案之后,我编辑了这样的代码.但是我得到了那些错误
return StartDate.ToString() + ';' + EndDate.ToString();
Run Code Online (Sandbox Code Playgroud)
错误:自Hdate.HDate(); return void,return关键字后面不能跟一个对象表达式
整个代码在这里:点击这里查看整个代码
只需使用";" 代替 ';':
return StartDate +";"+EndDate;
Run Code Online (Sandbox Code Playgroud)
字符串(Concat)有一个+运算符,它将在对象上运行(使用.ToString()) - 因此如果给出一个字符串,该语句是有效的.在你的情况下,没有这样的运算符用于字符,编译器无法知道你隐式想要将所有内容转换为字符串.
编辑:你的第二个问题(考虑将来成为一个新问题):
直接从您的代码(完整版):
public HDate(){
DateTime today = DateTime.Now;
/* snip - not relevant */
return StartDate+';'+EndDate;
}
Run Code Online (Sandbox Code Playgroud)
你看:这是你的HDate类型的构造函数- 你在最后的语句中返回一些东西......但你不能