C Sharp: Difference between revisions

From Wildsong
Jump to navigationJump to search
Brian Wilson (talk | contribs)
mNo edit summary
Brian Wilson (talk | contribs)
Line 1: Line 1:
I wanted this page to be called C# but apparently mediawiki did not approve.
I wanted this page to be called C# but apparently mediawiki did not approve.
Oh well. Maybe I will put all things beginning with the letter 'c' here.
Oh well. Maybe I will put all things beginning with the letter 'c' here.
== best practices ==
http://10rem.net/articles/net-naming-conventions-and-programming-standards---best-practices


== readonly ==
== readonly ==

Revision as of 17:46, 24 May 2012

I wanted this page to be called C# but apparently mediawiki did not approve. Oh well. Maybe I will put all things beginning with the letter 'c' here.

best practices

http://10rem.net/articles/net-naming-conventions-and-programming-standards---best-practices

readonly

Yes, there is a readonly setting for variables. One would think 'const' would be enough. Aren't these the same?

public static readonly string foo = "I am read - only."; // happens at program load
public const string foo = "I am read - only"; // happens at compile time

Check the debugger, you can see before the first line executes that foo = null. Since it happens at load time, you can do this

public static readonly string foo = Something.StringThing();

so the value is set once, and it's done atomically so it is thread-safe.

Preprocessor Directives

#if DEBUG
 http://codeidol.com/csharp/essential-csharp/Operators-and-Control-Flow/Csharp-Preprocessor-Directives/
#endif

What about things in square brackets

That I can't type in a wiki, like "bracket CommandLine bracket"

When would I ever use a Struct?

Read the official documentation here.

How can I get traction using command line builds with C#?