Сообщение Re: C++ на C от 19.03.2023 14:02
Изменено 19.03.2023 14:03 ononim
Re: C++ на C
Q>Что делать если компилятор только C (встроенная система) a хочется писать на C++? Не совсем на C++, конечно, но хотя бы на C с классами (C).
driver.h:
driver.c:
user.c:
driver.h:
struct Driver;
void Driver_Init(struct Driver *d);
void Driver_Send(struct Driver *d, const void *data, size_t len);
driver.c:
struct Driver
{
int fd;
};
struct Driver *Driver_Init()
{
Driver *d = malloc(sizeof(struct Driver));
d->fd = open(....);
return d;
}
void Driver_Send(struct Driver *d, const void *data, size_t len)
{
write(d->fd, data, len);
}
user.c:
#include "driver.h"
struct Driver *d = Driver_Init();
Driver_Send(d, "hello", 5);
Re: C++ на C
Q>Что делать если компилятор только C (встроенная система) a хочется писать на C++? Не совсем на C++, конечно, но хотя бы на C с классами (C).
driver.h:
driver.c:
user.c:
driver.h:
struct Driver;
struct Driver *Driver_Init(void);
void Driver_Send(struct Driver *d, const void *data, size_t len);
driver.c:
struct Driver
{
int fd;
};
struct Driver *Driver_Init(void)
{
Driver *d = malloc(sizeof(struct Driver));
d->fd = open(....);
return d;
}
void Driver_Send(struct Driver *d, const void *data, size_t len)
{
write(d->fd, data, len);
}
user.c:
#include "driver.h"
struct Driver *d = Driver_Init();
Driver_Send(d, "hello", 5);