冲突的声明

use*_*542 6 c++ conflict typedef size-t

我的代码中定义了一个typedef

typdef unsigned int size_t;
Run Code Online (Sandbox Code Playgroud)

它与stddef相矛盾

typedef __SIZE_TYPE__ size_t;
Run Code Online (Sandbox Code Playgroud)

我不确定如何绕过这个但仍想在我的代码中保留size_t.

Luc*_*ore 19

三种选择:

1)选择一个不同的名字,我想你已经有了.

2)使用namespace:

namespace X
{
   typedef long size_t;
}
Run Code Online (Sandbox Code Playgroud)

和类型

X::size_t x;
Run Code Online (Sandbox Code Playgroud)

3)丑陋,保证会让你被解雇,我投降了:

typedef unsigned int my_size_t;
#define size_t my_size_t
Run Code Online (Sandbox Code Playgroud)

  • 我喜欢你的1,2,3.这是好的,坏的,和#define _UGLY`. (9认同)