175

を使用してオブジェクトを印刷しようとすると、Xcode でエラーが表示されますがpo <objectName>、1 つのプロジェクトに対してのみです。

スクリーンショット

エラー: 構造体を具体化できませんでした: 変数 <varName> のサイズが ValueObject のサイズと一致しません

Xcode デバッガーは、すべてのオブジェクトをnil(self除外) として表示しますが、そうでない場合は (NSLog画像に示すように、正しい出力を示しています)。プロジェクトの何が問題なのかわかりません。他のすべてのプロジェクトは正常に動作します。

それが何であるかについて何か考えはありますか?(プロジェクトをクリーニングしても効果はありませんでした。)

4

15 に答える 15

41

デバッグ構成の「最適化レベル」を「なし」に設定し、問題を解決しました。

  • プロジェクトに移動Build settings
  • 探すDebug
  • チェックApple Clang - Code GenerationOptimization Level
  • Debugに設定None [-OO]

その後、デバッグ領域またはコンソールで変数の値を確認できるようになります。 ここに画像の説明を入力

于 2014-11-13T15:54:12.940 に答える
16

誰もが独自の解決策を持っているようです。

私にとっては、Objective-CSwiftを同時に使用します。

まず、 にアクセスしTARGETS -> Build Settingsて検索します。code generation

あなたは見つけApple LLVM 6.0 て、 Swift Compiler

Optimization Levelすべてをに変更してからNoneデバッグすると、値が見つからない場合がありますnil

驚くべきことに、一度価値を確認できれば、この問題は完全に解決され、元の状態に戻すことができOptimization Levelます。

于 2015-01-19T06:58:17.263 に答える
11

これが発生する可能性がある他の方法があります。私にとっては、デバッグビルドであっても、「その他の C フラグ」の値が「-O2」に設定されていたためです。デバッグ ビルドでこれをオフにすると、問題が解決しました。

于 2014-06-17T10:37:33.303 に答える
9

フィルタリングされたデバッグ出力

私にとって、Xcode はデバッガーの出力を除外していました。出力設定がデバッガー出力またはすべての出力であることを確認してください

于 2016-12-03T00:19:58.933 に答える
6

Deployment Postprocessing = YESこの問題に遭遇したところ、ビルド設定が原因であることがわかりました。

NO以下のスクリーンショットに示すように、これを変更して修正しました。

ここに画像の説明を入力

Xcode バージョン: OSX 10.9.5 の 6.0.1 (6A317)

于 2014-10-15T11:21:01.903 に答える
2

ここでの解決策は、変数error: <EXPR>:1:1: error: use of unresolved identifierを試行するたびに表示されるバグも修正します。po

私にとっての解決策は、にアクセスしBuild Settingsて検索しOptimization Level、各Debug設定が に設定されていることを確認することでしたNone

于 2015-01-31T01:04:36.070 に答える
1

ビルド設定の「その他の C フラグ」に移動し、デバッグ値を -o2 から -O0 に設定します。

于 2016-06-21T07:51:40.287 に答える