LoginSignup
1

More than 5 years have passed since last update.

「メンバ変数・グローバル変数」Global 'var' declaration requires an initializer expression or getter/setter specifier というエラー

Last updated at Posted at 2016-09-24
qiita.rb

Global 'var' declaration requires an initializer expression or getter/setter specifier

このようなSwiftのエラーは、メンバ変数・グローバル変数を定義する際、初期値を指定してない時に現れるエラーです。

Swiftではメンバ変数、グローバル変数を定義するときは、必ず初期値を入れなければいけません。下記のように、初期値を省いてグローバル変数を定義すると

qiita.rb


import UIKit


//初期値を省いたグローバル変数の定義
var global:Int


class ViewController: UIViewController {

このようなエラーが発生します。

qiita.rb

Global 'var' declaration requires an initializer expression or getter/setter specifier

ので、「?」を付けた形でグローバル変すを定義しましょう。こうすることで、どこからでも変数を参照できます。

そして、はてなをつけることで変数にnilを許容します。絶対に何かが入るという意味では「!」でも構いません。

qiita.rb


import UIKit

var global:Int?
var global:String?
var global:Img?

class ViewController: UIViewController {

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1