用C++写一个给时间的类定义构造函数,要求包括小时,分钟,秒,用户名,函数需运行时间的初始化,销毁,设置,显示
时间: 2024-04-29 19:21:06 浏览: 82
以下是一个简单的用C语言编写的时间类定义:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
typedef struct Time {
int hour;
int minute;
int second;
char* username;
} Time;
// 构造函数
Time* create_time(int hour, int minute, int second, char* username) {
Time* t = (Time*)malloc(sizeof(Time));
t->hour = hour;
t->minute = minute;
t->second = second;
t->username = (char*)malloc(sizeof(char) * (strlen(username) + 1));
strcpy(t->username, username);
return t;
}
// 销毁函数
void destroy_time(Time* t) {
free(t->username);
free(t);
}
// 设置函数
void set_time(Time* t, int hour, int minute, int second) {
t->hour = hour;
t->minute = minute;
t->second = second;
}
// 显示函数
void display_time(Time* t) {
printf("%d:%d:%d by %s\n", t->hour, t->minute, t->second, t->username);
}
int main() {
// 初始化时间
time_t now = time(NULL);
struct tm* timeinfo = localtime(&now);
int hour = timeinfo->tm_hour;
int minute = timeinfo->tm_min;
int second = timeinfo->tm_sec;
// 创建时间对象
Time* t = create_time(hour, minute, second, "user1");
// 显示时间对象
display_time(t);
// 修改时间对象
set_time(t, 12, 30, 0);
// 再次显示时间对象
display_time(t);
// 销毁时间对象
destroy_time(t);
return 0;
}
```
在这个类定义中,我们定义了构造函数`create_time`,它接受小时、分钟、秒和用户名作为参数,并返回一个新的时间对象。此外,我们还定义了一个销毁函数`destroy_time`,它接受一个时间对象,并释放它所占用的内存。我们还定义了一个设置函数`set_time`和一个显示函数`display_time`,它们分别用于修改和显示时间对象的属性。最后,我们在`main`函数中演示了如何使用这些函数来创建、显示、修改和销毁时间对象。
阅读全文