Microsoft MVP성태의 닷넷 이야기
귀신 곡할 상황 질문입니다. [링크 복사], [링크+제목 복사],
조회: 11015
글쓴 사람
발코더
홈페이지
첨부 파일
 

안녕하세요!

다음은 MSDN에 나와 있는 예제 그대로를 SV2008에 그대로 타이핑해서 코딩한 것입니다.
그런데 이게 아주 웃기는 상황이 발생합니다.
아래코드를 그대로 실행시키면
4번 표시된 부분에서 다음과 같은 오류가 발생합니다.

Creating instance of:System.EventArgs
Creating instance of:System.Random
여기까지 표시되고
System.Argumentnullexception:값은 null 일 수 없습니다.

이런 오류가 납니다.

그런데 2번처럼 MSDN 에서 그대로 Ctrl+c,Ctrl+v 해서 붙여놓고 실행하면 정상적으로 실행됩니다.
그래서 혹시 타이핑으로 해서 그런가 싶어 3번처럼 다시한 번 타이핑해서 실행해도 정상실행됩니다.

눈씻고 찾아봐도 1,2,3 이 같은 문자열이고 오타가 없는데 왜 이런 상황이 발생할까요??


 class Program
    {
        private static string intanceSpec = "System.EventArgs;Sytem.Random;System.Exception;System.Object;System.Version";<<=== 1

        //private static string intanceSpec = "System.EventArgs;System.Random;System.Exception;System.Object;System.Version";<<== 2
       // private static string intanceSpec = "System.EventArgs;System.Random;System.Exception;System.Object;System.Version";<<===3

        static void Main(string[] args)
        {
            string[] instances = intanceSpec.Split(';');

            Array instlist = Array.CreateInstance(typeof(object), instances.Length);
            object item;
            for (int i = 0; i < instances.Length; i++)
            {
                Console.WriteLine("Creating instance of: {0}", instances[i]);
                item=Activator.CreateInstance(Type.GetType(instances[i]));//<<============================== 4
                instlist.SetValue(item, i);
            }

            foreach (object o in instlist)
            {
                Console.WriteLine("Type: {0}\nValue: {1}\nHashCode: {2}\n", o.GetType().FullName, o.ToString(), o.GetHashCode());
            }

        }
    }








[최초 등록일: ]
[최종 수정일: 5/20/2012]


비밀번호

댓글 작성자
 



2012-05-20 11시13분
귀신이 곡할 일은 없습니다. 분명히, 1번과 2/3번은 다릅니다. 다시 한번 잘 보세요.
정성태
2012-05-21 01시43분
[발코더] 컥~
이틀 쳐다보니까 보이네요 ㅋㅋㅋ
단순 문자열안이라고 안이하게 생각했는데 그게 아니군요.
오타일꺼라 생각하고 수없이 찾다가 올린 질문인데 지송합니다.
저 부분은 타이핑할때도 언제나 자주 실수하는 부분입니다 ㅠㅠ
[guest]
2012-05-21 03시13분
사실 "발코더"님의 실수에 십분 공감하는 바입니다. 저도 가끔 그럴 때가 있거든요. ^^;
정성태

... 76  77  78  79  80  81  [82]  83  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
4086/22/20067379    답변글 invoke 관련하여...
401김용국6/19/20068537SmartClient에서 동적 어셈블리 관련 문의 드립니다 [1]
402김용국6/20/20067899    답변글 [답변]: SmartClient에서 동적 어셈블리 관련 문의 드립니다 ... 다시 문의 드립니다! [1]
404김용국6/20/20068128        답변글 [답변]: [답변]: SmartClient에서 동적 어셈블리 관련 문의 드립니다 ... 다시 문의 드립니다! [1]
405김용국6/21/20068449            답변글 잘 되네요~~ ^^ 고맙습니다!
407김용국6/21/20067852                답변글 [답변]: 다시한번 문의드립니다!
398김성호6/17/20068599IE프로그래밍 관련하여 질문이
400정성태6/19/20068253    답변글 [답변]: IE프로그래밍 관련하여 질문이 [5]
396guest6/13/20068227CallByName 을 어떻게 처리해야 할지 ....조언 부탁합니다.
397정성태6/15/20067938    답변글 [답변]: CallByName 을 어떻게 처리해야 할지 ....조언 부탁합니다.
399guest6/19/20067641        답변글 [답변]: [답변]: CallByName 을 어떻게 처리해야 할지 ....조언 부탁합니다.
392이상식6/9/20068361스마트클라이언트 실행환경 관련 질문입니다.
394정성태6/12/20068224    답변글 [답변]: 스마트클라이언트 실행 환경 관련 질문입니다.
395이상식6/12/20068606        답변글 [답변]: [답변]: 스마트클라이언트 실행환경 관련 질문입니다.
391심현철6/9/20068461Win32 platform과 .NET platform간의 성능이 어느정도 차이가 날까요?
393정성태6/12/20068110    답변글 [답변]: Win32 platform과 .NET platform간의 성능이 어느정도 차이가 날까요?
390이현행6/6/20068297정말 답답해서 그렇습니다. [1]
389임경훈6/2/200618097sql과 oracle 사용시 파라메타 차이점
387창민 6/1/20069933안녕하세요.문제가 걸렸는데 해결기미가 안보여서 답답해서.. 혹시 아시면 문제 채질이라도...파일 다운로드1
388정성태6/1/20069645    답변글 [답변]: 안녕하세요.문제가 걸렸는데 해결기미가 안보여서 답답해서.. 혹시 아시면 문제 채질이라도...
385오윤섭5/31/20067385SmartClient 동적호출
386정성태6/1/20067781    답변글 [답변]: SmartClient 동적 호출
380윤용한5/29/20067951ATL Event에서 스크립트가 값을 다시 돌려주는 방법은?파일 다운로드1
381윤용한5/29/20067562    답변글 [답변]: ATL Event에서 스크립트가 값을 다시 돌려주는 방법은?
382윤용한5/29/20068122        답변글 [답변]: [답변]: ATL Event에서 스크립트가 값을 다시 돌려주는 방법은?
383정성태5/30/20068402            답변글 [답변]: [답변]: [답변]: ATL Event에서 스크립트가 값을 다시 돌려주는 방법은?
... 76  77  78  79  80  81  [82]  83  84  85  86  87  88  89  90  ...