Не совместно используя все классы с общей библиотекой

, Таким образом, это говорит микросекунды явно, но говорит, разрешение системных часов является неуказанным. Я предполагаю разрешение в этом средстве контекста, как самая маленькая сумма это будет когда-либо увеличиваться?

структура данных определяется как наличие микросекунд как единица измерения, но это не означает, что часы или операционная система на самом деле способны к измерению настолько точно.

Как другие люди предложили, gettimeofday() плохо, потому что установка времени может вызвать расфазировку тактовых сигналов и отбросить Ваше вычисление. clock_gettime(CLOCK_MONOTONIC) то, что Вы хотите, и clock_getres() скажет Вам точность Ваших часов.

5
задан Ian Vaughan 28 October 2009 в 15:38
поделиться

2 ответа

Это возможно в GCC 4.0 и новее. Ребята из GCC рассматривают эту видимость . На вики GCC есть хорошая статья по этой теме. Вот отрывок из этой статьи:

#if defined _WIN32 || defined __CYGWIN__
  #ifdef BUILDING_DLL
    #ifdef __GNUC__
      #define DLL_PUBLIC __attribute__((dllexport))
    #else
      #define DLL_PUBLIC __declspec(dllexport) // Note: actually gcc seems to also supports this syntax.
    #endif
  #else
    #ifdef __GNUC__
      #define DLL_PUBLIC __attribute__((dllimport))
    #else
      #define DLL_PUBLIC __declspec(dllimport) // Note: actually gcc seems to also supports this syntax.
    #endif
    #define DLL_LOCAL
#else
  #if __GNUC__ >= 4
    #define DLL_PUBLIC __attribute__ ((visibility("default")))
    #define DLL_LOCAL  __attribute__ ((visibility("hidden")))
  #else
    #define DLL_PUBLIC
    #define DLL_LOCAL
  #endif
#endif

extern "C" DLL_PUBLIC void function(int a);
class DLL_PUBLIC SomeClass
{
   int c;
   DLL_LOCAL void privateMethod();  // Only for use within this DSO
 public:
   Person(int _c) : c(_c) { }
   static void foo(int a);
};
13
ответ дан 18 December 2019 в 13:16
поделиться

Если класс не должен быть доступен, его не должно быть в общедоступном заголовке. Какой смысл сообщать о том, что пользователь не может использовать?

1
ответ дан 18 December 2019 в 13:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: