Microsoft MVP성태의 닷넷 이야기
글쓴 사람
guest
홈페이지
첨부 파일
 

 public partial class Form1 : Form
 {
        
        public Form1()
        {
            InitializeComponent();
        }
                                     //this Error
        public static Image resizeImage(this Image imgToResize, Size size)
        {
            return (Image)(new Bitmap(imgToResize, size));
        }


질문>
 resizeImage(this Image imgToResize, Size size)에서 this를 빼면 에러가
위 에러가 안납니다

그런데 this를 써야 되는 경우가 혹시 있나요?








[최초 등록일: ]
[최종 수정일: 4/6/2023]


비밀번호

댓글 작성자
 



2023-04-06 08시41분
질문의 내용은 C# 3.0에 나온 "확장 메서드"를 기본적으로 모르기 때문에 나오는 것입니다. 그걸 공부하신 다음에,

Extension Methods (C# Programming Guide)
; https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/extension-methods

그래도 이해가 안 되는 부분이 있으면 다시 질문해 주세요.

참고로, 제 책을 가지고 있다면 "8.7 확장 메서드" 절을 보시면 됩니다.
정성태
2023-04-07 09시50분
[guest] 감사합니다
[guest]
2023-04-07 02시07분
[guest] 가장 유용한 용도는 sealed 클래스 처럼 상속이 안되는 경우처럼
main class를 수정하기 번거로운 경우로 이해했습니다

기본형은 namespace까지 별도로 꼭 구성해줘야 하나요?

using System;
using Extension;

namespace Extension
{
    public static class ExtensionMethod
    {
        public static int Multiplication(this int var, int a, int b)
        {
            int result = var;
            for (int i = 0; i < b; i++)
                result *= a;
            return result;
        }
    }
}

namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("{0}", 5.Multiplication(2, 3));
        }
    }
}
[guest]
2023-04-07 02시13분
질문이, 위의 덧글 소스코드에서 namespace Extension 블록 없이 public static class ExtensionMethod를 정의하면 빌드가 안 된다는 건가요?
정성태

... 46  47  48  49  50  [51]  52  53  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
3580국왕님7/14/201517425어셈블리 서명 pfx 파일의 가져오기시 암호를 확인할 수 있을까요? [1]
3579고훈용7/13/201517070스마트클라이언트 윈도우8.1 실행오류 해결 방법 문의 [1]파일 다운로드1
3578이성환7/9/201519833WPF Multi Dispatcher 사용 시 hang 발생 [4]파일 다운로드1
3577초보개발자7/9/201518593C# SHDocVw.InternetExplorer 관련 도움좀 부탁드리겠습니다. [1]
3576솔솔7/6/201517428zip압축시! [2]
3575염기돈6/29/201518101책을 보다가 익명 메서드 관련해서 질문거리가 생겼습니다. [2]파일 다운로드1
3574김기술6/26/201516400프로그램 사용중 USB 경로 관련 해서 문의 드립니다 [4]
3573gagl...6/24/201519270IIS 의 특정 페이지들에서 20초의 딜레이가 있습니다. [2]
3572프란치스코6/24/201517243책을 구입하고 싶은데, [5]
3571로손6/22/201517653.Net COM dll 관련 사용시 Event 부분에 관한 문의 입니다. [5]파일 다운로드1
3570나그네6/11/201521117안녕하세요.. ^^ 궁금한게 있어서 혹시 조언을 얻을수 있을까 해서.. [2]
3569김지용6/9/201523443FFmpeg.exe 를 이용한 C# 동영상 인코더 예제보고 질문 드립니다. [9]
3568유동근6/5/201517896C# TTS 오류 입니다 도와주세요.파일 다운로드1
3567김보경5/26/201518412c#이용한 음성인식에 질문드립니다. [1]
3566로손5/26/201520539Http 파일 업로드시 한글파일명 관련 [1]
3565김태훈5/20/201516335AxWebBrowser 파일 다운로드 관련하여 문의드립니다. [3]
3564이강산5/20/201516248MD5 인코딩 관련 문의 입니다 [1]
2564CatO...5/13/201517446AppDomain 문제로 삽질중입니다. [2]
2563솔솔5/13/201516047custom search!! [1]
2562안녕하세요5/13/201516830안녕하세요.. C# 구조체 관련. [1]
2560솔솔5/6/201516747zip파일생성시. [1]
2561솔솔5/6/201517421    답변글 [답변]: zip파일생성시. [5]파일 다운로드1
2558로손5/4/201520319VB6.0의 ActiveX(OCX) 와 .Net에서 만든 COM DLL의 차이점 ?? [1]
2559로손5/6/201517670    답변글 [답변]: VB6.0의 ActiveX(OCX) 와 .Net에서 만든 COM DLL의 차이점 ??
2557Guest4/24/201516474Serialize , DeSerialize 관련 질문입니다! [3]
1558민식짱4/23/201517333FFmpeg.exe 를 이용한 C# 동영상 인코더 예제를 보고 질문드립니다 [1]파일 다운로드1
... 46  47  48  49  50  [51]  52  53  54  55  56  57  58  59  60  ...