What is the difference between var and dynamic in c#

 
In C#, `var` and `dynamic` are both used for type inference, but they have different behaviors.

var is used for implicitly typed local variables, where the type is determined at compile-time based on the assigned value. Once the type is inferred, it is fixed, and the variable behaves like a statically typed variable.


var example = "Hello, World!"; // Compiler infers type as string


dynamic is a type that bypasses compile-time type checking and resolves types at runtime. It allows you to perform operations on objects without knowing their types at compile-time. However, this flexibility comes with a trade-off in performance and type safety.


dynamic example = "Hello, World!"; // Type is resolved at runtime


In summary, use var when you want the compiler to determine the type at compile-time with static typing, and use dynamic when you need runtime flexibility at the cost of type safety.

Comments

Popular posts from this blog

Attribute-based routing in web api

Garbage collection in C# with example

What is managed code and unmanaged code in c# with example