13.14
输出3个相同的数据
13.15
改变,会输出3个不同的数据
但是这个数据和我们传入f的数据并不同。
13.16
改变,会输出3个不同的数据,但是数据和我们传入f的数据是一致的
13.17
正确
#include <iostream>
class numbered {
public:
numbered() {
mysn = unique++;
}
int mysn;
static int unique;
};
int numbered::unique = 10;
void f(numbered s) {
std::cout << s.mysn << std::endl;
}
int main()
{
numbered a, b = a, c = b;
f(a);
f(b);
f(c);
}
#include <iostream>
class numbered {
public:
numbered() {
mysn = unique++;
}
numbered(const numbered& n) {
mysn = unique++;
}
int mysn;
static int unique;
};
int numbered::unique = 10;
void f(numbered s) {
std::cout << s.mysn << std::endl;
}
int main()
{
numbered a, b = a, c = b;
f(a);
f(b);
f(c);
}
#include <iostream>
class numbered {
public:
numbered() {
mysn = unique++;
}
numbered(const numbered& n) {
mysn = unique++;
}
int mysn;
static int unique;
};
int numbered::unique = 10;
void f(const numbered& s) {
std::cout << s.mysn << std::endl;
}
int main()
{
numbered a, b = a, c = b;
f(a);
f(b);
f(c);
}