귀하는 손님 이십니다
로그인
회원가입
  
  델마당 공식 은행계좌
  하나은행 227-910235-83607
  예금주 이상국(운영진)
프로젝트 게시판
투표게시판
델마당소개
기초부터 활용까지! 델파이 교육 - 데브기어
 광고문의 :
吏덈Ц怨 떟蹂 吏덈Ц怨 떟蹂 입니다.
글내용 - 吏덈Ц怨 떟蹂
 [떟蹂] C++ 뀥뵆由욧낵 뜽뙆씠 젣꼫由
coding
(沅뚯닚샇)
2019-05-03 삤썑 5:50:55
671회 조회


등록된 파일이 없습니다.

>> 1. 媛쒕컻/떎뻾 뵆옯뤌

>> (1) OS : win10

>> (2) 媛쒕컻댋 : delphi 10.3 RIO

>> (3) 궗슜 Database :

>> 2. 媛쒕컻 以묒씤 봽濡쒓렇옩

>> 3. 吏덈Ц 궡슜

>>  

>> 떎쓬 뜽뙆씠 젣꽕由쓣 룄엯븳 겢옒뒪 씤꽣럹씠뒪엯땲떎

>>  

>>   IMy = interface
    ['{4F6FE1FB-E1DE-4F2A-8BBD-C8C40AB767B9}']
  end;

>>
  TMy = class
  end;

>>   TMyChild = class(TMy)
  end;

>>  

>> TMy쓽 F瑜 IMy븳젙옄瑜 씠슜븯뿬 IMy굹 븯쐞 씤꽣럹씠뒪留 븳젙븯怨

>> TMyChild뿉꽌뒗 F瑜 IMy濡 吏젙븯뒿땲떎.

>>  

>> [dcc32 Error] Unit2.pas(25): E2514 Type parameter 'T' must support interface 'IMy'
[dcc32 Fatal Error] Project2.dpr(5): F2063 Could not compile used unit 'Unit2.pas'

>>  

>> 而댄뙆씪븯硫 삤瑜섍 諛쒖깮븯硫댁꽌 씠빐媛 릺吏 븡뒗 삤瑜섍 諛쒖깮빀땲떎.

>> F뿉 IMy븳젙옄瑜 吏젙뻽뒗뜲 솢 T뿉 IMy瑜 吏썝븯뒗 엯쓣 슂援ы븯뒗吏..

>>  

>> 븘留.. 踰꾧렇濡 蹂댁씠뒗뜲 젣꽕由씠 2009遺꽣 吏썝븳嫄 媛먯븞븯硫..

>> 떟떟븯援곗뿬..뀪뀪;

>>  

 

type
  IMy = interface
    ['{4F6FE1FB-E1DE-4F2A-8BBD-C8C40AB767B9}']
  end;

  TMy < T, F : IMy > = class

.....

뙆뒪移 뼵뼱 湲곗큹쟻씤 臾몃쾿쓣 옒紐 씠빐븯怨 엳뒗 벏.

 

쐞 媛숈 떇쑝濡 젙쓽븯硫 T瑜 엫쓽쓽 엯쑝濡, F瑜 IMy 엯쑝濡 젣븳쓣 (Constraint)

몢怨좎옄 븯뒗 썝옒쓽 紐⑹쟻怨 떎瑜닿쾶

T F 몮떎 IMy 엯쑝濡 Constraint 젣븳쓣 嫄곕뒗 瑗댁씠 뤌 踰꾨┰땲떎.

 

  TMy < T; F : IMy > = class
濡 빐빞 썝옒 紐⑹쟻뿉 留욌뒗 嫄곌퀬

 

C# 뼵뼱뿉꽌뒗

뒪듃윮爾, 겢옒뒪, new 븷떦, umanaged specifier 벑 Constraint 瑜 떎뼇븯寃 吏젙븷 닔 엳뒗뜲

ex)

public class MyClass where T : IComparable, new()

{

}

뜽뙆씠 젣꼫由쓽 Constraint뒗 C# 뼵뼱 Constraint 湲곕뒫 以묒뿉꽌 븯굹쓽 湲곕뒫留

紐⑤갑빐꽌 援ы쁽빐 넃 닔以뿉 遺덇낵븯怨

 

C++ 뀥뵆由우뿉꽌뒗 媛뒫븳 variadic 湲곕뒫룄 뜽뙆씠 뼵뼱뿉꽑 吏썝릺吏 븡湲 븣臾몄뿉

C++뿉꽑 븘옒 媛숈씠 template 븳以꾨줈 媛뒫븳 寃껋쓣

ex)

template < class ... Ts > class ...

 

뜽뙆씠濡 媛蹂 媛닔 N媛쒕 씤닔濡 媛뽯뒗 젣꼫由쓣 留뚮뱾젮硫

TMy < T1 > = class ...
TMy < T1, T2 > = class ...
TMy < T1, T2, T3 > = class ...

............
TMy < T1, T2, T3 ........ Tn > = class ...

臾댁떇븯寃 N媛 留뚰겮 以묐났 젙쓽빐빞 븿.

 

C++쓣 봽듃윮뿉 鍮꾩쑀븯硫

삤釉뚯젥듃 뙆뒪移쇱 嫄몄쓬留 닔以쓽 떚肄 닔以 諛뽰뿉 븞맂떎뒗. 뀑뀑