簡體   English   中英

CArray和const模板參數

[英]CArray and const template parameter

是否可以對CArray使用const參數

我目前正在使用像這樣的CArray,但無法編譯:

typedef CArray<const CString, const CString&> data_container;

而且我總是得到這個編譯錯誤:

錯誤C2664:'ATL :: Checked :: memcpy_s':無法將參數1從'const CString *'轉換為'void *'

CArray使用的代碼期望您的TYPE是非常量的,因此可以將其強制轉換為void *(如編譯錯誤消息所述)。

您可以存儲const CString指針,這將在取消引用時為您提供const CString。 您現在確實有分配/清理該內存的負擔。 另一種選擇是將CString包裝在一個簡單的類中,該類具有“ GetString”函數,該函數返回對其內部CString實例的const引用。

顯然沒有。 你為什么想這么做?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM