2014-04-05 3 views
2

데이터베이스 용 SQLite를 사용하는 C++ 프로그램을 작성하고 있습니다. 이 코드 라인에서는;SQLite 불완전 유형 오류

void testRun() 
{ 
    // some code here 

    sqlite3_stmt stmt; 

    // some code here too 
} 

다음과 같은 오류가 발생합니다.

error: aggregate 'sqlite3_stmt stmt' has incomplete type and cannot be defined 
    sqlite3_stmt stmt; 
       ^

나는 합병 된 SQLite 소스 코드를 사용하고 있으며 "sqlite3.h"를 포함 시켰습니다. 이 오류의 원인은 무엇이며 어떻게 해결할 수 있습니까? 저는 MinGW_64를 사용하여 Windows 7 64 비트를 사용 중입니다.

+0

내가 직접 C 라이브러리에서 SQLite는 사용되지 않습니다,하지만 나는 그것의 유형을 직접 인스턴스화하는 것은 아닙니다 것을 가정 : 당신은 그것의 인스턴스를 만들 수 없습니다,하지만 당신은 하나의 포인터를 만들 수 있습니다 대신'FILE * '과 같이 불투명 한 포인터를 유지해야한다. –

+0

http://stackoverflow.com/questions/10978020/compiling-sqlite-for-windows-64-bit –

답변

2

이는 구현에만 알려져있는 불투명 한 구조입니다. ,

sqlite3_stmt* stmt; 
sqlite3_prepare(db, "SELECT...", -1, &stmt, 0); 
+0

고맙습니다. 작동합니다. 불투명 한 구조/오브젝트에 대해 더 자세히 배우는 곳은 어디입니까? – Amani