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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

Q&A

1回答

2501閲覧

XcodeのAnalyze時にNSTimerに表示される警告

kikuchi

総合スコア8

Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

0グッド

0クリップ

投稿2015/02/10 10:02

XcodeのProduct->Analyzeを利用した際に

NSTimer *timer;
timer = [NSTimer scheduledTimerWithTimeInterval:1.5f target:self selector:@selector(hoge:) userInfo:nil repeats:NO];

の箇所に

Dead store
Value stored to 'timer' is never read

というメッセージが表示されます。
上記メッセージを削除するにはどうしたらよいでしょうか?

ご回答よろしくお願いします。

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

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

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

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

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

guest

回答1

0

こんにちは。

エラーメッセージは、「timer」の値が参照されていないことを指摘しています。

ということで、タイマーの生成には

lang

1NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.5f target:self selector:@selector(hoge:) userInfo:nil repeats:NO];

と書き直してみてはいかがでしょうか。

以上、ご参考いただければ幸いです。

投稿2015/02/10 12:03

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

kikuchi

2015/02/12 03:21

GeorgeCohta様 ご回答ありがとうございます。 該当箇所を書きなおしてみたのですが、引き続きanalyze時のdead storeエラーは消えず、また常時Unused Entity Issueが表示されるようになりました。 ちなみにコードを質問時のようにわざわざ2行に分けていたのはUnused Entity Issueを消すためでした。
退会済みユーザー

退会済みユーザー

2015/02/12 05:05

kikuchiさん、コメント(返信)をいただきありがとうございます。 そうでしたか。 ただ、タイマーの生成に関するコードは通常使われているものですので、問題はないと思います。 Unused Entity Issueは、未使用のエンティティに関する問題を示すものですが…… ソースコードの全体がみえていませんので、現状ではなんともいえません。
kikuchi

2015/02/16 07:07

GeorgeCohta様 Unused Entity Issueについてですが、NSTimerの設定まで(repeats:YESなど)を一行で全て記述するとtimerに対して"Unused variable 'timer'"とアラート表示が出てしまいます。 動作上特に問題ないと思いますができたら消したいなと思っています。
退会済みユーザー

退会済みユーザー

2015/02/16 07:34

そうですか、困りましたね。 提示していただいた箇所だけではなく、前の行との関係でアラートがでているというようなことは考えられませんか。 前回のコメントで、僕が「ソースコードの全体がみえていませんので」と書いたのは、そうした理由からなのですが……
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問