質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

2回答

377閲覧

型の宣言にクラス名がある意味

Rnabe

総合スコア9

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2020/06/24 09:19

swift2ヶ月目の者です。
理解しているようで理解できていないことに気づき、やることは尽くして理解できなかったので質問させていただきます。

全てのコードを貼りましたが、わからないのはクラスのOrderStoreの部分です。

import Foundation class OrderStore: ObservableObject { @Published var orders: [OrderEntity] = [] } enum Flavor:Int16 { case milk_tea case uji_matcha_milk case okinawa_brown_sugar_milk case cassis_raspberry_milk case strawberry_milk var name: String { flavorArray[Int(self.rawValue)] } } var flavorArray = ["Milk tea", "Uji Matcha Milk", "Okinawa brown sugar milk", "Cassis raspberry milk", "Strawberry Milk"] class OrderEntity : Identifiable ,ObservableObject { @Published public var id: String @Published public var flavo: Int16 @Published public var nataDeCoco: Bool public var flavorName: String { Flavor(rawValue: self.flavo)!.name } init( id: String = UUID().uuidString, flavorr: Int = 0, nataDeCoco: Bool = true) { self.id = id self.flavo = Int16(flavorr) self.nataDeCoco = nataDeCoco } }

わからないこと

ここである構造体で

@EnvironmentObject var orderStore: OrderStore

というコードを宣言します。@EnvironmentObjectはとりあえずほっといて、
OrderStore型のorderStoreという変数を定義しています。
OrderStore型とはなんなのでしょうか?
変数orderStoreは何を表しているのでしょうか?
この2つがわからないことです。

考えたこと

この後のコードでorderStore.ordersを配列として使っているから、最初はインスタンスと同じだと思っていたのですが、あまりしっくりきません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TsukubaDepot

2020/06/24 09:30

たしか、このコードは3月ごろに出たSwiftUIの解説書のコードだったと思いますが、そこには解説は乗っていませんでしょうか。 客が注文する飲み物にタピオカを入れるか否かを記録するアプリを作ってたような記憶があるのですが(立ち読みなので曖昧)、その流れで説明があったような気がします。
Rnabe

2020/06/24 12:34

はい、おっしゃる通り解説書のコードを少し変えたものです。 もちろん所持をしていて解説は何回も読んでいますが、割と簡素なものでわからなかったです。最初の方に書いた「やることは尽くした」に含んでいたのですが、伝わりずらかったですね。
guest

回答2

0

ベストアンサー

OrderStore型の変数はOrderStoreクラスのインスタンスが入る変数です。

Int型の変数はInt構造体のインスタンスが入る変数なのと一緒です

投稿2020/06/24 09:29

ozwk

総合スコア13532

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Rnabe

2020/06/24 12:39

なるほど。やはりそのままなのですね。 少しの「特殊な場合なのでは?」という気持ちが時間が経つにつれて「自分の知らない定義の仕方があるのかもしれない」と変な方向に進んでしまってしまいました。わかりやすい回答ありがとうございます????‍♂️
guest

0

OrderStore型とはなんなのでしょうか?

上で宣言しているclass OrderStoreです。

変数orderStoreは何を表しているのでしょうか?

どういう回答を期待しているのでしょうか?

投稿2020/06/24 09:23

maisumakun

総合スコア145208

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Rnabe

2020/06/24 12:40

質問が下手でした。考えて頂いてありがとうございます。????‍♂️
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問