possível deduzir se o tipo está incompleto sem falha de compilaçã

Eu quero alcançar um comportamento como sizeof (complete_type) retornará real sizeof e sizeof (incomplete_type) - será apenas 0

Eu preciso fornecer informações do tipo de tempo de execução estendido para comunicação IPC (entre processos) com a estrutura de descrição por tipo:

struct my_type_info
{
    bool   is_pointer;
    size_t size;         //for double* will be 4 on i386. that is sizeof(double*)
    size_t base_size;    //for double* will be 8. that is sizeof(double)
};

O problema aparece quando, no meu sistema, algo como a classe MyOnlyDeclaredClass; Ocorreu um erro de compilação, obviamente, pelo motivo de eu não poder medir o tamanho del

boost type_traitshttp: //www.boost.org/doc/libs/1_48_0/libs/type_traits/doc/html/index.htm sugere muitas classes em tempo de compilação, mas não há 'is_incomplete'

Compiladores interessantes são VS2008, VS2010, clang 3, gcc-4.6, gcc-4.7

questionAnswers(2)

yourAnswerToTheQuestion