强制函数返回值并使编译错误C#

Mig*_*uel 7 .net c#

我在该类中有一个类和一个方法.但是这个类方法返回一个字符串.当我调用类方法时,我没有得到错误,尽管我没有捕获字符串值返回.有没有办法可以让C#和.net强制我在返回值时捕获值.这是我的意思的一个例子.

1-创建一个班级考试.

class test
    {

        public string mystring() {

            return "BLAH";

        }
    }
Run Code Online (Sandbox Code Playgroud)

2-从程序或其他类调用类方法

test mystring = new test();
mystring.mystring();
Run Code Online (Sandbox Code Playgroud)

我在Visual Studio工作时的编译器没有抱怨我没有捕获返回值.这是正常的还是我错过了什么.我可以强制编译器通知我该函数返回一个值,但我没有抓住它?

提前感谢您提出的任何建议.

Mik*_*keH 8

您可以将其转换为属性而不是方法:

  public string myString
  {
    get
    {
      return "Blah";
    }
  }
Run Code Online (Sandbox Code Playgroud)

如果只是调用属性,则无法编译:

myString.myString; //Results in "Only assignment, call, increment, decrement, await, and new object expressions can be used as a statement" Error
Run Code Online (Sandbox Code Playgroud)

  • @Miguel,你还可以让一个属性返回一个方法,所以 `string mystring{ get { return test(); }}` ..... `test(){ return "test";}` 调用 `mystring` 会给你“test”,你必须使用它。 (2认同)