LINUX.ORG.RU

написание типов данных в C


0

0

Просветите зелёного юнца - как в pure С сделать свой тип данных? Скажем, я хочу написать свою реализацию int а-ля MyInt - как описать применяемые к ней действия сложения, вычитания и т.д. именно как a+b etc, а не add(a,b)?

★★★
Ответ на: комментарий от shuthdar

> Я так и думал :(

если нужно переопределять операции - вам как минимум в C++, там это как раз вполне естественная вещь.

// wbr

klalafuda ★☆☆
()
Ответ на: комментарий от shuthdar

> В плюсах знаю. Хотел на простом це, чтобы из привычной среды не выпадать.

тогда упс. в сравнении с тем-же C++, в С отсутствует масса плюшек. впрочем, а оно действительно так надо? а если действительно да, то почему не писать на C++?

// wbr

klalafuda ★☆☆
()
Ответ на: комментарий от klalafuda

Да это в школу мне надо всего-лишь :) Напишу на плюсах, просто отвык от них у уже подзабыл плюшки...

shuthdar ★★★
() автор топика
Ответ на: комментарий от Miguel

Ну написать сначала эмулятор проца с переменным количеством
регистров :-)) и будет код вида

ra 100 ; register allocate
ld FFFF, %r1
ld FF00, %r2
add %r1, %r2, %r3

; хочу 200 регистров
ra 200

:-))))))))

Begemoth ★★★★★
()

>Просветите зелёного юнца - как в pure С сделать свой тип данных?

typedef struct :)

ip ★★★★
()
Ответ на: комментарий от Miguel

Ну если с union работать аккуратно - то проблем нет. А так "через жопу" - это скорее к С++ относится.

Begemoth ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.