0
私はSwiftプロジェクトにTPCircularBufferを統合しようとしています。 11.0/Xcodeの9私はTPCircularBuffer.hで次のエラー取得してい :TPCircularBufferのエラー - atomic_fetch_add
ファイルをドラッグし、私のプロジェクトにドロップした
「『atomic_fetch_add』への呼び出しに該当する機能を」私は変更を加えなかった。私は旗や何かを欠いているのだろうかと思っています。それとも私のために働いていないのか誰にも分かりますか?
#ifdef __cplusplus extern "C++" { #include <atomic> typedef std::atomic_int atomicInt; #define atomicFetchAdd(a,b) std::atomic_fetch_add(a,b) } #else #include <stdatomic.h> typedef atomic_int atomicInt; #define atomicFetchAdd(a,b) atomic_fetch_add(a,b) #endif static __inline__ __attribute__((always_inline)) void TPCircularBufferConsume(TPCircularBuffer *buffer, uint32_t amount) { buffer->tail = (buffer->tail + amount) % buffer->length; if (buffer->atomic) { atomicFetchAdd(&buffer->fillCount, -amount); } else { buffer->fillCount -= amount; } assert(buffer->fillCount >= 0); }
これはすばらしい答えです。ラッパー関数の宣言と実装がどのように見えるかの例を表示したいと思うのだろうかと思います。 – BigSauce