как пределать код с C на C++

Тема в разделе "WASM.BEGINNERS", создана пользователем verelex, 4 янв 2010.

  1. verelex

    verelex New Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2006
    Сообщения:
    90
    Требуется:
    1) malloc(...); заменять на (тип*)malloc(...), определяя тип автоматом.

    2) sizeof(struct AuxData) - заменять на просто sizeof(AuxData) //???????

    3) void foo(){
    struct AuxData *pAuxData;
    ...

    заменять на

    void foo(){
    AuxData *pAuxData;
    ...//?????

    4) typedef struct my_file my_file;
    struct my_file {
    typedef struct my_io_methods my_io_methods; // вложенные структуры, зачем?
    struct my_io_methods {
    int iVersion;
    int (*xClose)(my_file*);

    5) ExprList *pList = pExpr->x.pList;
    struct ExprList_item *pItem;

    заменять на

    ExprList *pList = pExpr->x.pList;
    ExprList::ExprList_item *pItem; // так как вложенная структура

    т.е. struct тип_item заменять на тип::тип_item //????????

    ...

    тулза на питоне ctocpp что-то не пашет нормально, пол дня потратил, а результатов - 0;
    пыталась создать класс, возможно неправильно использовал
     
  2. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Регулярные выражения жеж.
     
  3. Clear__Energy

    Clear__Energy New Member

    Публикаций:
    0
    Регистрация:
    30 янв 2009
    Сообщения:
    432
    Книги по c++ запретили?
     
  4. verelex

    verelex New Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2006
    Сообщения:
    90
    это правильно? в смысле это необходимо чтобы переделать или что-то еще
     
  5. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    не обязательно. такая запись тоже поддерживается

    не понял,что зачем? и как это связано с вложенными структурами

    Как тебе сказать, не видя определения структуры?
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    verelex
    конечно, это не все различия. покажи код, который переделываешь, а я скажу, что переделать
     
  7. verelex

    verelex New Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2006
    Сообщения:
    90
    может посоветуете тулзу чтоб на входе одно - на выходе второе?
     
  8. verelex

    verelex New Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2006
    Сообщения:
    90
    sqlite3
     
  9. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    verelex
    на входе "хочу чтобы было пи*то"?
     
  10. verelex

    verelex New Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2006
    Сообщения:
    90
    на входе - sqlite3.c, cqlite3.h
    на выходе - cpp, hpp
    хочу дописать функции в sqlite3.cpp, добавив его в проект c++, а они не отлаживаются и компилятся только если отключить precompiled headers
     
  11. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    verelex
    может лучше обертку на с++ написать?
     
  12. verelex

    verelex New Member

    Публикаций:
    0
    Регистрация:
    15 ноя 2006
    Сообщения:
    90
    Я хотел сделать чтобы кодировалась база при сохранении, для этого мне нужно отладить в студии (пишет "Debug\database1.pch' precompiled header file is from a previous version of the compiler, or the precompiled header is C++ and you are using it from C (or vice versa)"), а обертки есть готовые.
     
  13. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    verelex
    хм, да тут если честно можно просто расшифровывать файл и зашифровывать после окончания работы, по сути если ты сделаешь это в памяти защита сильно не улучшиться, но зато ты потеряешь все преимущества SQLITE.
     
  14. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.551
    Адрес:
    Russia
    Попрошу не флеймить. Переношу тему в бегиннерс.
     
  15. J0E

    J0E New Member

    Публикаций:
    0
    Регистрация:
    28 июл 2008
    Сообщения:
    621
    Адрес:
    Panama
    Если проблема с precompiled headers, то нужно их отключить. Потеряешь немного времени на компиляции, но меньше, чем на переделке.
     
  16. Gnil

    Gnil New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2008
    Сообщения:
    41
    Не вижу проблем в использовании c-шной версии sqlite3 в c++ проекте. Precompiled headers нужно отключить только для одного файла, а не для всего проекта.
    Если дебаг работает неправильно, возможно, следует перейти на последнюю студии с сервис паками.