Variable is assigned but its value is never used (C#)

35.2k views Asked by At

In Visual Studio I used the following code:

 private bool answer = true;
    Private Buttonclick()
   {
      if()
       {
        answer =false
        }
   }

Compiler gives me a warning that says "answer is assigned but its value is never used". How do I fix this?

4

There are 4 answers

0
AudioBubble On BEST ANSWER

It means you have given answer a value, but not referenced it elsewhere. Meaning you are not using answer elsewhere in your program.

You fix it by referencing answer from another part of your program.

0
Kirti On

The reason the warning pops up is not because the variable is never assigned, but because it is in fact never used for any sort of comparison in the rest of the code.

Please go through this reference: http://weblog.west-wind.com/posts/2009/Feb/28/Variable-is-assigned-but-its-Value-is-never-used-Warning

0
Daniel Park On

If you want to disable warnings, the error list contains a button that can stop them being shown in the list.

enter image description here

Additionally, a warning is just a warning. They won't stop your program from compiling, or even running. They may, however, declare in advance runtime errors and the like, so don't ignore them completely.

0
andreyk2 Hohlov On

In addition to the answers above, for more deep understanding of the this warning:

This warning will not always pop-up (if you not use assigned variable). Assigning a non-constant expression or method result will NOT generate the warning. It is done intentionally, since such an unassigned variables can be used in debugging.

For example:

 var answer = SomeObject.SomePropery; //will not generate CS0219

There are excellent explanation in Microsoft.Docs: https://learn.microsoft.com/en-us/dotnet/csharp/misc/cs0219