何の::行内で:return :: operator new(size、:: std :: nothrow); 、なぜこのような::
をグローバルoperator new
とoperator delete
関数が呼び出されることを意味するスコープ解決演算子を使用したテンプレート型TC++のスコープ解決演算子についての混乱
template<typename T>
class DefaultMemoryAllocator
{
public:
static inline void *Allocate(size_t size)
{
return ::operator new(size, ::std::nothrow);
}
static inline void Deallocate(void *pointer, size_t size)
{
::operator delete(pointer);
}
};
"スコープ解決演算子"です。そのタイプの理由はここで説明されていますhttp://stackoverflow.com/questions/4173254/what-is-the-curiously-recurring-template-pattern-crtp – StoryTeller