[C#] ContainsKey์ TryGetValue
TryGetValue vs. ContainsKey? ```csharp // key๊ฐ ์๋์ง ์ฒดํฌ public bool ContainsKey(TKey key) { return (this.FindEntry(key) >= 0); }
TryGetValue vs. ContainsKey? ```csharp // key๊ฐ ์๋์ง ์ฒดํฌ public bool ContainsKey(TKey key) { return (this.FindEntry(key) >= 0); }
default ์ฐ์ฐ์ default ํค์๋๋ ํด๋น ๋ณ์ ํ์ ์ ๊ธฐ๋ณธ ๋๋ ๋น ์ํ๋ฅผ ๋ฐํ ์ฐธ์กฐ ํ์(class, delegate, โฆ)์ default ๊ฐ: null ๊ฐ ํ์ (struct, enum, โฆ)์ default ๊ฐ: all-zeroes value int 0, DateTime 0001-01-01 00:00:0...
Managed vs. Unmanaged Code Unmanaged code๋ ์ปดํจํฐ ๊ตฌ์กฐ, ํ๋ก์ธ์์ ํนํ๋์ด ๊ทธ์ ์์กดํ๋ ์ฝ๋ C#์์๋ unsafe ํค์๋๋ฅผ ์ด์ฉํ๋ ์ฝ๋ ํ๋ก๊ทธ๋๋จธ์ ์ํด ์ง์ ๊ด๋ฆฌ Managed code๋ .NET ํ๋ ์์ํฌ์์ ๊ตฌ๋ํ๋ C# ์ฝ๋ ์์ฒด ...
lock ํค์๋ ๊ฐ์ฒด์ ๋ํ ๋ฎคํ ์ค๋ฅผ ํ๋ํ๊ณ signal๊ณผ unlock์ ์คํ
DontDestroyOnLoad ์๋ก์ด Scene์ด ๋ก๋๋ ๋, ์๋์ผ๋ก ํ๊ดด๋์ง ์๋ target ์ค๋ธ์ ํธ๋ฅผ ์์ฑ ์ ๋ ๋ฒจ์ด ๋ก๋๋๋ฉด Scene์ ๋ชจ๋ ์ค๋ธ์ ํธ๋ค์ ํ๊ดด๋๊ณ , ์ ๋ ๋ฒจ์ ์ค๋ธ์ ํธ๋ค์ด ๋ก๋๋๋ค. ๋ ๋ฒจ ์ค์์น ์ค์ ์ค๋ธ์ ํธ๋ฅผ ๋ณด์กดํ๊ธฐ ์ํด DontDestroyOnLoad ์ฌ์ฉ ํด๋น ์ค๋ธ์ ํธ๊ฐ component์ด๊ฑฐ๋ gam...
sealed ํค์๋ ํด๋์ค์ ์ ์ฉ๋ ๊ฒฝ์ฐ ๋ค๋ฅธ ํด๋์ค๊ฐ ํด๋น ํด๋์ค์์ ์์ํ๋ ๊ฒ์ ๋ง์
C# ํฌ์ธํฐ C# ๋๋ถ๋ถ์ ์ฝ๋๋ ํ์ธํ ์ ์๋ ์์ ํ ์ฝ๋ .Net ๋๊ตฌ์์ ์ฝ๋๊ฐ ์์ ํ์ง ํ์ธ ๊ฐ๋ฅ ์์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ์ง ์๊ณ , ํฌ์ธํฐ๋ก ์ง์ ๋ฉ๋ชจ๋ฆฌ์ ์์ธ์คํ์ง ์์ ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ฑ์ ์ฑ๋ฅ์ ํฅ์ ํฌ์ธํฐ๊ฐ ํ์ํ ๋ค์ดํฐ๋ธ ํจ์๋ฅผ ํธ์ถํ๋ ๊ฒฝ์ฐ ํ์ ๋ณด์ ๋ฐ ์์ ์ฑ ์ด์ ๋ฐ์...
Job System
๋๊ธฐ์ ๋น๋๊ธฐ ๋๊ธฐ ์ด๋ค operation์ ์คํ์์ผฐ์ ๋ ๊ฒฐ๊ณผ๊ฐ์ด ๋์ถ๋ ๋๊น์ง ํ๋ก๊ทธ๋จ์ ๋ฉ์ถฐ์ ๊ธฐ๋ค๋ ค์ผ ํจ ๋น๋๊ธฐ ์ธ์ ๊ฐ์ด ๋์ถ๋ ์ง ๋ณด์ฅํ ์ ์๊ณ , ๊ทธ ๋์ ํ๋ก๊ทธ๋จ์ ๋ค๋ฅธ ํ๋ก์ธ์ค๋ฅผ ์งํํ ์ ์์ async / await๋ ์ ์ค ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ์ ์ํด ์ฌ...
ํ์ฅ ๋ฉ์๋๋ ๊ธฐ์กด ์ ๊ณต๋๋ ํด๋์ค/๊ตฌ์กฐ์ฒด/์ธํฐํ์ด์ค์ ๊ตฌํ์ ์ง์ ๋ณ๊ฒฝํ์ง ์๊ณ ๊ธฐ๋ฅ์ ํ์ฅํด ์ฌ์ฉ ๊ธฐ์กด ๋ฐ์ดํฐ ํ์ (int, float ๋ฑ)์ class์๋ ์ ์ฉ ๊ฐ๋ฅ