Mac にて UUID を生成する

UUID(Universally Unique Identifier)は、ソフトウェア上でオブジェクトを一意に識別するための識別子です。

wikipedia: UUID

Mac にてUUID を生成する方法は2つある。

(1) libuuid
Linuxと同様にC言語API

(2) CFUUID
Mac固有のAPIで,Objective-C(あるいはC++) 向け

linux: libuuid

apple: CFUUID

libuuid の使い方は下記を参考にした。

C 言語で UUID を利用する

uuid_t value;
uuid_generate(value);

CFUUID の使い方は下記を参考にした。

アプリケーションで一意のIDを生成、取得する

(NSString*)createUUID
{
  CFUUIDRef uuidObject = CFUUIDCreate(kCFAllocatorDefault);
  NSString *uuidStr = (NSString*)CFUUIDCreateString(kCFAllocatorDefault, uuidObject);
  CFRelease(uuidObject);
  return uuidStr;
}

サンプルコードを Guthub に公開した。
https://github.com/ohwada/MAC_cpp_Samples/tree/master/system/uuid