Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Перенесение кода с Visual C++ на g++
|
|||
|---|---|---|---|
|
#18+
Всем привет, Я пишу cross-платформенное (консольное) приложение и столкнулся со следующей проблемой, мой код идеально компилируется в Visual C++ но g++ мне выдает ошибку (вернее их куча, но они идентичные нижеприведенной) Никаких проблем с непереносимыми функциями у меня нет (все идеально совместимо как с Windows так и с UNIX), но есть куча условностей и разностей в синтаксисе казалось бы стандартизированного С++ Код у меня примерно следующий (он довольно комплексный но пример исчерпывающий) #define TRY try{ #define CATCH(X) }catch(...){errorstr+="called in - ";errorstr+=X+string(" ");throw;} #define BEGINSTAT clock_t beginstattime=::clock(); #define ENDSTAT(X) {unsigned int commontime=::clock()-beginstattime;PowerLog(ARGV_PATH_CGI+"performance.log",X##" execution time",commontime,10,true);} ...(далее еще куча всего) unsigned int DBManagerObject::GetNewMessageId() { TRY #ifdef PERFORMANCE_STAT BEGINSTAT #endif unsigned int id; FILE* file=fopen(MESSAGESTABLE.c_str(),"r+b"); fread(&id,sizeof(unsigned int),1,file); fclose(file); #ifdef PERFORMANCE_STAT ENDSTAT("GetNewMessageId") #endif return ++id; CATCH("GetNewMessageId") } Подскажите мне пожалуйста что хочет сказать g++ выдавая следующую ошибку,- db.cpp:139:54: pasting ""DBManagerObject::GetNewMessageId"" and "" execution time"" does not give a valid preprocessing token Я так понимаю вся проблема в макросе: define ENDSTAT(X) {unsigned int commontime=::clock()-beginstattime;PowerLog(ARGV_PATH_CGI+"performance.log",X##" execution time",commontime,10,true);} (где PowerLog просто созданный мною класс, но это неважно) Заранее огромное спасибо за любую помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2004, 23:56 |
|
||
|
Перенесение кода с Visual C++ на g++
|
|||
|---|---|---|---|
|
#18+
Скорее всего что-то связанное с мелкософт специфик и "execution time" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2004, 05:41 |
|
||
|
Перенесение кода с Visual C++ на g++
|
|||
|---|---|---|---|
|
#18+
Может ему не нравиться вот это: Артем Иванов, X##" execution time",... точнее он думает что это препроцессорная команда, потому что начинается с # ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2004, 08:55 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=218&tid=1348261]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 296ms |
| total: | 445ms |

| 0 / 0 |
