【问题标题】:Using "new" with Poco library methods将“新”与 Poco 库方法一起使用
【发布时间】:2016-03-16 23:43:33
【问题描述】:

使用 Poco 库,如果我正在做这样的事情:

MailMessage mailMessage;
mailMessage.addPart("", new FilePartSource("/path/icon.png", "image/png"),
    Poco::Net::MailMessage::CONTENT_ATTACHMENT,
    Poco::Net::MailMessage::ENCODING_BASE64);

我是否需要担心删除“新的”FilePartSource
发送到 MailMessage 中的 addPart 方法/函数?

Upload a file using POCO - SSL Connection Unexpectedly Closed Exception

我注意到在一些示例中,“新”被扔进了我不会称之为典型的地方。

第 65-66 行:新的 StringPartSource https://github.com/pocoproject/poco/blob/develop/Net/samples/Mail/src/Mail.cpp

第 88 行:新上下文 https://github.com/pocoproject/poco/blob/develop/NetSSL_OpenSSL/samples/Mail/src/Mail.cpp

【问题讨论】:

  • 始终阅读文档以检查这一点。大多数时候函数会占用Poco::AutoPtr(类似于std::shared_ptr
  • 是的,**MOST 函数确实接受指针。我的目的是关注所提供的示例如何打破传统的 C++“可读性”规则。

标签: c++ smart-pointers poco-libraries


【解决方案1】:

http://pocoproject.org/docs/Poco.Net.MailMessage.html#22405

MailMessage 取得 PartSource 的所有权,并在以下情况下删除 它不再需要。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多