C++ 高手进来下 关于随机函数
来源:百度知道 编辑:UC知道 时间:2024/06/27 08:52:30
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main(void)
{
int i;
time_t t;
srand((unsigned) time(&t));
printf("Ten random numbers from 0 to 99\n\n");
for(i=0; i<10; i++)
printf("%d\n", (rand() % 30) +20);
return 0;
}
在TC下调试正确了
如果没有定义拷贝构造函数,则默认将数据成员对应一一复制,使用的值是=后对象的数据成员值。
之所以出现你说的问题是因为你没有理解构造函数是怎么运行的。 如果自己定义了构造函数,则使用这个函数,否则使用默认构造函数(与拷贝构造函数一样将数据成员对应一一复制)。但是你定义的构造函数只有输出语句,参数也没有默认值,所有会初始化错。
//
我刚才实验了一下,觉得你还是理解的不够深入。你做了例子,编译通过了,却没有看结果怎样。
事实上,有几点需要弄清楚:
一、类不同于c中的结构体,一般不用{ }初始化对象;
MSDN帮助信息:
Compiler Error C2552
'identifier' : non-aggregates cannot be initialized with initializer list
The specified identifier was incorrectly initialized.
An initializer list is needed to initialize the following types:
An array
A class, structure, or union