[TIL] 21.03.27.(Sat)
アクティビティの内容
各コンピューティングプロジェクトチームメンバーは、実装前に汎用プロトコルとエクスポートを作成します。
10進数計算機とバイナリ計算機の各タイプで共通に採用されるプロトコルとプロトコルの機能を実現するための拡張を作成し,初歩的な実装を行った.// 더하기 기능
protocol Addable {
associatedtype T
associatedtype T: Numeric
func add(_ operatedNumber: T, and operatingNumber: T)
var stack: Stack<T> { get set }
mutating func add(_ operatedNumber: T, and operatingNumber: T)
}
extension Addable {
func add(_ operatedNumber: T, and operatingNumber: T) {
mutating func add(_ operatedNumber: T, and operatingNumber: T) {
let sumResult = stack.sumAllElements()
stack.reset()
stack.push(sumResult)
}
}
Numeric
プロトコルを用いて,以前JENICタイプを用いて実装したスタック構造にすべての内部要素を追加するためのsumAllElements()
法を実装した.where
構文を使用して、sumAllElments()
メソッドを必要としないタイプ(Stringなど)がNumeric
プロトコルに従わないように設計されている.
学習内容
デジタルプロトコル
既存のスタック構造を実装する場合、内部で使用されるpropertyまたはpropertyの要素はJENICタイプに従います.十進法計算機およびバイナリ計算機は、いずれも수
型Double
またはInt
シリーズに従って使用されており、加算時にデジタルスタックに存在するすべての数値を加算するための方法が実施され、結果として以下のエラーが発生した.
エラー推奨はRangeReplaceableCollection
プロトコルを採用し、加算のみに有効であり、その他の減算、乗算、除算演算はFloatingPoint
プロトコルを採用することを推奨する.
ただし、FloatingPoint
プロトコルを使用すると、Int
タイプの要素を持つスタックインスタンスを生成できません.
その後,整数型と実数型の4則演算をサポートするプロトコルを探したところ,Numeric
プロトコルが見つかった.
プロトコルの要約は곱셈을 지원하는 값의 타입
であり、정수 및 부동소수형 수
のようなスカラー値の計算に基礎を提供するプロトコルを説明する.アクティビティで使用した例のように.
Reference
この問題について([TIL] 21.03.27.(Sat)), 我々は、より多くの情報をここで見つけました
https://velog.io/@ryan-son/TIL-21.03.27.Sat
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
// 더하기 기능
protocol Addable {
associatedtype T
associatedtype T: Numeric
func add(_ operatedNumber: T, and operatingNumber: T)
var stack: Stack<T> { get set }
mutating func add(_ operatedNumber: T, and operatingNumber: T)
}
extension Addable {
func add(_ operatedNumber: T, and operatingNumber: T) {
mutating func add(_ operatedNumber: T, and operatingNumber: T) {
let sumResult = stack.sumAllElements()
stack.reset()
stack.push(sumResult)
}
}
デジタルプロトコル
既存のスタック構造を実装する場合、内部で使用されるpropertyまたはpropertyの要素はJENICタイプに従います.十進法計算機およびバイナリ計算機は、いずれも
수
型Double
またはInt
シリーズに従って使用されており、加算時にデジタルスタックに存在するすべての数値を加算するための方法が実施され、結果として以下のエラーが発生した.エラー推奨は
RangeReplaceableCollection
プロトコルを採用し、加算のみに有効であり、その他の減算、乗算、除算演算はFloatingPoint
プロトコルを採用することを推奨する.ただし、
FloatingPoint
プロトコルを使用すると、Int
タイプの要素を持つスタックインスタンスを生成できません.その後,整数型と実数型の4則演算をサポートするプロトコルを探したところ,
Numeric
プロトコルが見つかった.プロトコルの要約は
곱셈을 지원하는 값의 타입
であり、정수 및 부동소수형 수
のようなスカラー値の計算に基礎を提供するプロトコルを説明する.アクティビティで使用した例のように.Reference
この問題について([TIL] 21.03.27.(Sat)), 我々は、より多くの情報をここで見つけました https://velog.io/@ryan-son/TIL-21.03.27.Satテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol