출처 : https://www.youtube.com/watch?v=o7QyAiqGCyo&list=PL4SIC1d_ab-Y-bBKojxhtFWwNpawMM1h5&index=11
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class Player
{
int AT;
int HP;
public void Test(int _Dmg)
{
// 이안에 지역변수에서 벌어지는 일은
// 이 안에서 벌어지는 일일 뿐이다.
_Dmg = 1000;
}
}
namespace Memory_Value
{
class Program
{
static void Main(string[] args)
{
Player NewPlayer = new Player();
// 함수의 인자값
int Value = 0;
NewPlayer.Test(Value);
// Q) Value 값은 얼마가 나올까요?
// 1. 0
// 2. 1000 -> 프로그래밍을 처음하시는 분들은 대부분 이걸 말한다.
// 왜냐 아직 메모리를 이해하지 못했다.
// 데이터의 흐름을 이해하고 있지 못하다.
// 왜 1000이 나오지 않을까?
// 이걸 이해하려면 값과 위치에 대해서 이해해야 한다.
Console.WriteLine(Value);
}
}
}
Return
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class Player
{
int AT;
int HP;
public int Test(int _Dmg)
{
// 이안에 지역변수에서 벌어지는 일은
// 이 안에서 벌어지는 일일 뿐이다.
_Dmg = 1000;
return _Dmg;
}
}
namespace Memory_Value
{
class Program
{
static void Main(string[] args)
{
Player NewPlayer = new Player();
// 함수의 인자값
int Value = 0;
NewPlayer.Test(Value);
// 지금까지 배운 문법으로는 절대 불가능하다.
// 그러면 어떻게 해야 하느냐?
// 이렇게 처리해줘야 한다.
// 이걸 값형의 처리
Value = NewPlayer.Test(Value);
// Q) Value 값은 얼마가 나올까요?
// 1. 0
// 2. 1000 -> 프로그래밍을 처음하시는 분들은 대부분 이걸 말한다.
// 왜냐 아직 메모리를 이해하지 못했다.
// 데이터의 흐름을 이해하고 있지 못하다.
// 왜 1000이 나오지 않을까?
// 이걸 이해하려면 값과 위치에 대해서 이해해야 한다.
Console.WriteLine(Value);
}
}
}
'C# 개인 공부 기록용 > 어소트락 게임아카데미 - C# 무료강의[2019] 총48강' 카테고리의 다른 글
[C# 강의 13화, 14화] !중요! 맴버함수의 기본개념 , static 함수 & static class (0) | 2022.07.04 |
---|---|
[C# 강의 12화] !중요! 레퍼런스의 메모리 구조 및 처리 개념 (0) | 2022.07.04 |
[C# 강의 10화]실행되는 함수의 메모리 구조 (0) | 2022.07.04 |
[C# 강의 8화] 함수 용법 추가설명 (0) | 2022.07.04 |
[C# 강의 7화]맴버함수, 지역변수의 기본개념 & 클래스 접근제한 지정자 (0) | 2022.07.01 |