读书人

为啥有的类的cpp文件里面写有非这个类

发布时间: 2013-01-04 10:04:17 作者: rapoo

为什么有的类的cpp文件里面写有非这个类得成员函数的实现?
比如,定义 csdn 类 有 csdn.h 和 csdn.cpp两个文件。

但是在csdn.cpp里面写一个

static inline void Ilovecsdn(int Beijing)
{
Beijing=99;
}


而这个函数又不是csdn类得成员函数。那这样写是为什么?有神马作用?

求解惑

Thanks.
[解决办法]
逻辑上不属于任何一个类,当然写在类的外面,比 C# 那种非要加个类的包装自然多了。
加 static 则只在本模块有效,inline 并不影响逻辑。
有时操作符重载因参数顺序,被迫以友员形式定义在外。
[解决办法]
有的时候一个小函数
理论上不属于一个类
但是这个类又想用到它
又不想这个类被外部调用 或者与外部的一些函数重名
因为是static 这在该编译单元内有效
就可以这么写了

一般这种情况把这个函数写成该类的私有函数也可以

读书人网 >C++

热点推荐