class LoginCode
{
public void MakeRanNum()
{
Random _random = new Random();
Console.WriteLine("{0}", _random.Next(1, 10)); //1부터 10까지 아무거나
}
}
class Program
{
static void Main(string[] args)
{
LoginCode loginCode = new LoginCode();
loginCode.MakeRanNum();
loginCode.MakeRanNum();
loginCode.MakeRanNum();
}
}
이렇게 하면 결과값이
같은 메모리 주소에 있는 값만 불러오니...3개 모두 동일한데..
어떻게 하면 3개 값을 모두 다르게 할 수 있나요??..
해당 댓글은 삭제되었습니다.
제가 초보라 그런데 시드를 다르게 주라는 말이 어떤 말인가요?
random 생성자 파라메터로 받는게 시드 안넣으면 기본값 시간 동일 시드면 같은패턴으로 나옴
random을 전역변수에 놓고 한번만 생성해서 함수에선 next만 호출
랜덤 시드가 보통 시간으로 하니깐 연속적으로 생성시 시드가 동일해져서 같은 값만 나올 수 있음
같은 메모리에 있는 값을 불러오는게 아니라 윗말대로 실행시간이 너무 짧아서 같은 시드가 들어가는거