当前位置:  开发笔记 > 编程语言 > 正文

有效使用typedef?

如何解决《有效使用typedef?》经验,为你挑选了1个好方法。

我有一个char(即字节)缓冲区,我通过网络发送.在将来的某个时候,我可能想要将缓冲区切换为不同的类型,如unsigned charshort.我一直在考虑做这样的事情:

typedef char bufferElementType;

每当我用缓冲元素做任何事情时,我都会声明它bufferElementType而不是char.这样我可以通过改变这个typedef切换到另一种类型(当然它不会那么简单,但它至少很容易识别需要修改的地方...... bufferElementType附近会有一个).

这是typedef的有效/好用吗?难道不值得吗?这会在将来的某个时候让我头疼吗?会不会让维护程序员讨厌我?

我已经阅读了何时应该在C++中使用Typedef,但没有人真正涵盖这一点.



1> Diego Sevill..:

这是一个伟大的(和正常的)用法.但是,您必须小心,例如,您选择的类型符合相同的有符号/无符号条件,或者它们对运算符的响应类似.然后,之后更改类型会更容易.

另一个选择是使用模板来避免修改类型直到您编译的那一刻.定义为的类:

template 
class Whatever
{
   CharType aChar;
   ...
};

能够使用您选择的任何字符类型,同时它以相同的方式响应所有运算符.

推荐阅读
罗文彬2502852027
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有