>백엔드 개발 >C++ >C#의 일반 메소드 인수를 숫자 유형으로 제한하려면 어떻게해야합니까?

C#의 일반 메소드 인수를 숫자 유형으로 제한하려면 어떻게해야합니까?

DDD
DDD원래의
2025-02-01 23:16:09834검색

C#일반 방법 숫자 유형 제한 How Can I Restrict Generic Method Arguments to Numeric Types in C#?

C#의 일반적인 방법은 다양한 유형의 추상적이고 복잡한 작업을위한 강력한 도구입니다. 그러나 전통적인 키워드는 인터페이스 또는 상속 제약 조건 만 허용합니다. 이 한계는 매개 변수를 특정 유형 (예 : 숫자 기본 요소 유형)으로 제한하려는 경우 문제가 될 수 있습니다.

.NET 7은 IbinaryInteger를 소개했습니다 .NET 7의 출현 으로이 문제에 대한 해결책이 나타났습니다. System.numerics라는 이름의 인터페이스. 이 인터페이스에는 int16, int32, int64, uint16, uint32 및 uint64와 같은 일반 방법을 제한 할 수있는 모든 Integer 유형이 포함되어 있습니다. IbinaryInteger를 사용하는 IntegerFunction 구현 예를 들어 다음 를 고려하면 전달 된 매개 변수가 양수이면 true를 반환하십시오.

예제 사용 where 새로운 를 사용하여, 우리는 다른 정수 유형의 긍정적 인 특성과 부정적인 특성을 쉽게 확인할 수 있습니다.

역사 검토

가 도입되기 전에 C#은 유전자 파라미터를 특정 수치 유형으로 제한하는 명시 적 지원이 부족합니다. 대신 프로그래머는 공장 모델 또는 전략과 같은 방법을 변경하는 데 도움을 줄 수 있습니다. 그러나 이러한 방법을 사용하려면 사용자가 추가 코드를 작성하고 복잡성을 높여야합니다.

위 내용은 C#의 일반 메소드 인수를 숫자 유형으로 제한하려면 어떻게해야합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.