Objective-cコードを読んだあと、この文章がインターフェイスの上にあることがわかりました。誰かが私にその意味を教えてくれますか、いくつかのチュートリアルclaveについて、ありがとうございましたこれは何の意味ですか:_Pragma( "clang assume_nonnull begin")
1
A
答えて
3
Objective-Cコンパイラ(clang)の新しいバージョンでは、パラメータ、戻り値、変数、およびプロパティをnull値として許可するかどうかを定義できます。
これは、一般的に_Nullable
または_Nonnull
属性を追加することで、宣言内の各ポインタのために行われます。これは、あなたがfetch
関数にnil
を渡すことができないことを意味
int fetch(int * _Nonnull ptr);
。
たとえば、すべての(またはほとんどの)ポインタをnull以外にしたい場合があります。ヘッダーファイルのすべてのポインタに_Nonnull
を追加するのは面倒です。これを簡単にするために、ファイルの先頭にプラグマを追加し、最後に対応する終了プラグマを追加することができます。これにより、すべてのポインタがnull以外にデフォルト設定されます。 1つまたは2つをヌル可能にする必要がある場合は、そのポインタだけに_Nullable
を追加できます。
iOSとmacOSでは、_Pragma("clang assume_nonnull begin")
と_Pragma("clang assume_nonnull end")
の代わりにNS_ASSUME_NONNULL_BEGIN
とNS_ASSUME_NONNULL_END
を使用できます。
もちろん、null以外の値ではなくnullableをデフォルトにする場合は、「nullable」バージョンもあります。
clangとnull可否属性の詳細については、https://clang.llvm.org/docs/AttributeReference.html#nullability-attributes
関連する問題
- 1. Clangの "返されたオブジェクトのリーク"は何を意味しますか?
- 2. django-summernoteのSUMMERNOTE_CONFIGでこれらの意味は何ですか?
- 3. Simulinkでこれらの数値の意味は何ですか?
- 4. Pythonのこれらのシンボルの意味は何ですか?
- 5. これは何を意味するのですかexit(main())
- 6. これらの演算子の意味は何ですか(**、^、%、//)? - Python?
- 7. これらのgitコマンドの意味は何ですか?
- 8. これらのコードの意味は何ですか?
- 9. これは何を意味するのでしょうか?
- 10. _attribute(セクション(「NC_BSS」)...これの意味は何ですか?
- 11. NSDecimalAdd() - constの意味は何を意味するのですか?
- 12. 客観的な意味での意味は何ですか?
- 13. node.jsの '[、params_name]'の意味は何ですか?ここで
- 14. これは何を変換する意味ですか?
- 15. これは& 'ルビーの意味ですか?
- 16. .clang-formatの最後に省略記号は何を意味しますか?
- 17. C#でこれは正確に何を意味しますか?
- 18. これはc int a:16;で何を意味しますか?
- 19. このMakefileスニペットでは@ ... @の意味は何ですか?
- 20. objcではこの構文の意味は何ですか?
- 21. !このコードでは!タイプの意味は何ですか?
- 22. Swiftではこの構文の意味は何ですか?
- 23. このコードでは `$`の意味は何ですか?
- 24. ReactJSでは何の意味ですか?
- 25. MongoDBでの意味は何ですか?
- 26. Perlで@_の意味は何ですか?
- 27. log4j.propertiesのこれらのプロパティは何を意味しますか?
- 28. 「read_strt」はここでは何を意味していますか?
- 29. バッチファイルからこの行の "/"の意味は何ですか?
- 30. Pythonの[...]の意味は何ですか?