(Swift3) swift3 관점에서의 sqlite3 API 분석 – C-API 사용법 심화

Swift에서 sqlite3 사용하기에 대한 글을 몇 편 작성했었는데, 이 글에서는 C API를 사용하는데 있어서 관련되는 Swift 타입들과, 실제 C/C++ API가 어떤식으로 변환되어 Swift 영역으로 들어오는지에 대해 좀 더 자세하고 깊이 들여다보도록 하겠다. sqlite3_open 먼저 데이터베이스 파일을 열고 커넥션을 만드는 부분부터 시작하자. 모든 작업의 시작점이 될 sqlite3_open() 함수의 원형1은 다음과 같다. 파일경로를 받아서 연결을 생성한 후 연결 핸들러를 같이 전달받은 ppDB에 넣어준다. 이 때 ppDB의 타입은 sqlite3인데, 이는 C 구조체로되어 있다.2 int sqlite3_open( const char *filename, sqlite3 **ppDB ); //… typedef