1.引用库头文件后,立即undef类型,适用于define/typedef定义的类型。
u1.h
#include <string>
#define WORD std::string
WORD fun(WORD &str) {
return str + " world";
}
u2.h
typedef unsigned short WORD;
WORD u2fun(){
WORD i = 2;
return i;
}
test.cpp
//#define WORD WORD_U2
#include "u2.h"
#undef WORD
//#define WORD WORD_U1
#include "u1.h"
#undef WORD
class he__ {
public:
std::string h;
};
#include <iostream>
int main(){
std::string s= "hello";
std::cout << fun(s) << std::endl;
std::cout << u2fun() << std::endl;
}
本文通过两个具体的示例深入探讨了C/C++中define与typedef的不同之处。首先介绍了如何使用这两种方式定义相同名称的类型,并展示了在实际代码中的应用。然后通过一个包含字符串操作和整型变量处理的示例程序,详细解释了它们各自的特点及适用场景。
161

被折叠的 条评论
为什么被折叠?



