Mac OS XのCoreFoundation Carbonフレームワークの2つのCFUUIDRef
を比較するにはどうすればよいですか? 2つのCFUUIDが等しいかどうかをチェックする簡単な方法はありますか?2つのCFUUID(Mac OS X Carbon/CoreFoundation)を比較するにはどうすればよいですか?
3
A
答えて
9
1
標準的な方法や推奨される方法があるかどうかはわかりませんが、次のことで十分ですか?
#define CompareUUIDs(u1, u2) memcmp(CFUUIDGetUUIDBytes(u1), CFUUIDGetUUIDBytes(u2))
次のように使用することになります。
if (CompareUUIDs(u1, u2) == 0) {
// UUIDs are equal
} // etc..
を別の方法として、あなたはそれらが等しいか否かのみで、本当に興味のとおり
#define UUIDsAreEqual(u1, u2) (memcmp(CFUUIDGetUUIDBytes(u1), CFUUIDGetUUIDBytes(u2)) == 0)
それは希望次のように使用してください:
if (UUIDsAreEqual(u1, u2)) {
// UUIDs are equal
} // etc..
+1
D'oh、私はばかです。私は 'CFEqual'を複製しました。代わりにPeter Hoseyの応答を参照してください。 :-) –
関連する問題
- 1. Eclipseでgitの2つのリビジョンを比較するにはどうすればよいですか?
- 2. OS XでSBTをアンインストールするにはどうすればよいですか?
- 3. 2つのフォームファイルの違いを比較するにはどうすればよいですか?
- 4. シャッフルされた2つの文字列を比較するにはどうすればよいですか?
- 5. Vimエディタでは、Mac OS Xの.vimrcにファンクションキーをマップするにはどうすればよいですか?
- 6. Javaでプログラムで2つのodsドキュメントを比較するにはどうすればよいですか?
- 7. 複数のドットで2つの「数字」を比較するにはどうすればよいですか?
- 8. SilverlightでSystem.Text.Encodingの2つのインスタンスを比較するにはどうすればよいですか?
- 9. vimのvimdiffに似た2つのファイルを比較するにはどうすればよいですか?
- 10. Javaで2つのイメージを比較するにはどうすればよいですか?
- 11. Ruby 1.9で2つのファイルを比較するにはどうすればよいですか?
- 12. 2つのプロパティを数値で比較するにはどうすればよいですか?
- 13. jinja2 if文で2つの整数を比較するにはどうすればよいですか?
- 14. RSpecで2つのハッシュを比較するにはどうすればよいですか?
- 15. 2つの配列を要素ごとに比較するにはどうすればよいですか?
- 16. Criteria APIの2つのLocalDateオブジェクトを比較するにはどうすればよいですか?
- 17. System.Object型の2つの値を値と比較するにはどうすればよいですか?
- 18. バイナリパターンイメージの2つの輪郭を比較するにはどうすればよいですか?
- 19. 2つのコントロールの値をトリガーと比較するにはどうすればよいですか?
- 20. 2つの配列の値を比較するにはどうすればよいですか?
- 21. 2つのRSpecスイートの実行結果を比較するにはどうすればよいですか?
- 22. 同じ構造の2つのテーブルを比較するにはどうすればよいですか?
- 23. デルファイの2つの数値を比較するにはどうすればよいですか?
- 24. 2つの.netコンソールアプリケーションの全体的なパフォーマンスを比較するにはどうすればよいですか?
- 25. 2つのJavascript関数の速度を比較するにはどうすればよいですか?
- 26. 同じテーブルの2つの列を比較するにはどうすればよいですか?
- 27. pkg(Mac OS X)からインストールされたnodejをアンインストールするにはどうすればよいですか?
- 28. 計算機のようにMac OS Xスポットライトプラグインを書くにはどうすればいいですか?
- 29. Mac OS Xで使用するライブラリを定義するにはどうすればよいですか?
- 30. 2つのgitリポジトリを比較するにはどうすればよいですか?
具体的には、http://www.opensource.apple.com/source/CF/CF-550.19/CFUUID.cを見ると、equals関数ポインタにNULLが指定されていることがわかります。 (http://www.opensource.apple.com/source/CF/CF-550/CFRuntime.cを参照してください)CFEqualは、ポインタアイデンティティ比較+タイプID比較のデフォルト実装を使用してUUIDを比較します。再ユニーク。 (__CFUUIDCreateWithBytesPrimitiveは__CFUUIDAddUniqueUUIDを呼び出します) –