人为地定义一些“无意义”的宏(宏名本身有意义),以起到提升代码程序的可读性。

1. IN/OUT

指定参数用于输入还是输出:

#define IN
#define OUT

void InvertMatrix(
    IN Matrix originalMatrix,
    OUT Matrix *resultMatrix
);

// IN OUT 连用,表示直接在输入对象上进行修改后输出,也即修改是 in-place(就地)的
void ChangeSentenceCase(
    IN StringCase desiredCase,
    IN OUT Sentence *sentenceToEdit
);
posted on 2018-03-20 23:49  未雨愁眸  阅读(116)  评论(0编辑  收藏  举报