Как разместить неконструктурную функцию вызов в C ++?C++

Программы на C++. Форум разработчиков
Anonymous
Как разместить неконструктурную функцию вызов в C ++?

Сообщение Anonymous »

C ++ имеет новый синтаксис, который вызывает конструктор с пользовательским выходным адресом.

Код: Выделить всё

struct external_class{ 	unsigned short data; }; struct external_class *_ZN14external_classC1Ev(struct external_class *out); struct external_class *_Z17external_functionv(struct external_class *out); void construst_external_class_at(struct external_class *out){ 	_ZN14external_classC1Ev(out); } void return_external_function_at(struct external_class *out){ 	_Z17external_functionv(out); }
здесь незакончен (замените/что?

Код: Выделить всё

#include  class external_class{ public: 	external_class(); 	~external_class(); 	unsigned short data; }; external_class external_function(); extern "C" void construst_external_class_at(external_class *out){ 	new(out) external_class; } extern "C" void return_external_function_at(external_class *out){ 	/* what? */ }
Godbolt

Подробнее здесь: https://stackoverflow.com/questions/796 ... -call-in-c

Вернуться в «C++»