Обратите внимание, что TIdAttachment
действительно абстрактно (как заметил Реми Лебо в комментарии).Вместо этого используйте TIdAttachmentFile
.В C ++, я думаю, это должно выглядеть так (Обновление: я вижу, вы уже нашли это):
TIdAttachmentFile *attachment = new TIdAttachmentFile(msg->MessageParts, "C:\\attach.bmp");
FWIW, вызовы именованных конструкторов, такие как TMyClass.Create(args)
в Delphi, переводятся как new TMyClass(args)
в C ++Builder.Вот почему Delphi часто перегружает Create
вместо использования конструкторов с другими именами, таких как CreateWithSpecialParams
.В Delphi конструктор может иметь любое имя, но не в C ++.
Обратите внимание, что в Delphi вы можете иметь constructor Create(Integer)
и constructor CreateEx(Integer)
, и они различимы.Это нельзя перевести на C ++ Builder, поскольку оба переводят в MyClass(int)
, поэтому этого следует избегать, если программист Delphi хочет, чтобы его или ее класс можно было использовать в C ++ Builder.