由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - C++默认的copy constructor的疑惑
相关主题
[合集] C++问题(copy constructor)C++: Static initialization dependency
关于C++ copy-constructor 一个奇怪的问题C++ 中 myobject * a =new myobject[n] 的问题
question about c++ constructorTest your C++ knowledge...
菜鸟请教smart pointer关于C++中一个Class的大小 (转载)
[合集] 关于template和inheritance的问题请教C++问题,confusing...
namespace 问题C++里面
c++ 一问c++ 是否也有class method??
function declarationc++ 得最基本问题
相关话题的讨论汇总
话题: howmany话题: c++话题: out话题: msg
进入Programming版参与讨论
1 (共1页)
z****e
发帖数: 2024
1
看到thinking in c++一段代码:
#include
#include
using namespace std;
ofstream out("HowMany.out");
class HowMany {
static int objectCount;
public:
HowMany() { objectCount++; }
static void print(const string& msg = "") {
if(msg.size() != 0) out << msg << ": ";
out << "objectCount = "
<< objectCount << endl;
}
~HowMany() {
objectCount--;
print("~HowMany()");
}
};
int HowMany::objectCount = 0;
HowMany f(HowMany x) {
x.print("x argument inside f()");
return x;
}
t****t
发帖数: 6806
2
你定义了HowMany::HowMany(), 没定义HowMany::HowMany(const HowMany&). 对象既可
能从前一个调用生成, 也可能从后一个调用生成. 你计数只计了前面的, 所以看起来拆
掉的比生成的多.

【在 z****e 的大作中提到】
: 看到thinking in c++一段代码:
: #include
: #include
: using namespace std;
: ofstream out("HowMany.out");
: class HowMany {
: static int objectCount;
: public:
: HowMany() { objectCount++; }
: static void print(const string& msg = "") {

1 (共1页)
进入Programming版参与讨论
相关主题
c++ 得最基本问题[合集] 关于template和inheritance的问题请教
[合集] 关于C++ default copy constructornamespace 问题
一道c++的考古题c++ 一问
Why should i include .cpp instead of .hfunction declaration
[合集] C++问题(copy constructor)C++: Static initialization dependency
关于C++ copy-constructor 一个奇怪的问题C++ 中 myobject * a =new myobject[n] 的问题
question about c++ constructorTest your C++ knowledge...
菜鸟请教smart pointer关于C++中一个Class的大小 (转载)
相关话题的讨论汇总
话题: howmany话题: c++话题: out话题: msg