自从我完成C++以来已经有一段时间了,请多多包涵。我有以下结构:

struct  sPage { U16 _; };
typedef sPage tPage;

但是当我尝试做的时候:
tPage pagenumber = 0;

我收到以下错误:“不存在从int转换为sPage的合适的构造函数”。我究竟做错了什么?

最佳答案

您需要花括号来初始化:

tPage pagenumber = {0};

或者创建自己的构造函数:
struct  sPage
{
    U16 _;

    sPage(U16 val) : _(val) { }
};

10-05 23:49