[英]Using std::memcpy to copy an object that contains a boost::any data member
我正在嘗試通過網絡 API 傳遞一個包含boost::any數據成員的對象,以在兩個應用程序之間交換數據。 我知道 API 在內部使用memcpy來復制數據,但我不確定我想要做的是調用未定義的行為。 我寫了一個簡單的例子來演示以這種方式使用memcpy : #include <boost/a ...
[英]Using std::memcpy to copy an object that contains a boost::any data member
我正在嘗試通過網絡 API 傳遞一個包含boost::any數據成員的對象,以在兩個應用程序之間交換數據。 我知道 API 在內部使用memcpy來復制數據,但我不確定我想要做的是調用未定義的行為。 我寫了一個簡單的例子來演示以這種方式使用memcpy : #include <boost/a ...
[英]What will be an efficient way of converting a std::vector<Boost::any> to a std::vector<float>
我可以使用循環將元素從 boost::any 向量復制到 std::vector 的浮點數。 從某種意義上說,要復制 50000 個值是低效的,向量可以增長到 50K 以上,我必須將其保存到磁盤的不同文件夾中。 所以這是一個瓶頸。 到目前為止,以下內容不起作用 ...
[英]Template cast operator and boost::any or std::any
我寫了一個通用的 class 來為任何 class 提供一個簡單的基於 JSON 的初始化。 在我想將它應用到包含枚舉的 class 之前,它就像一種魅力。 my base class first parse the JSON, find the sub object of the JSON t ...
[英]boost::any how to check for a null/undefined value
我有一個 boost::any 對象,我想檢查它的類型。 當定義類型時這很容易,但是當類型未定義時我如何獲得相同的結果(即因為它的值尚未設置)。 ...
[英]C++ Templates access a function with different types
所以我想做的就是這樣。 我有一個像這樣的模板結構: 我想用不同類型的結構創建一個向量,然后使用一個for循環遍歷我所有的元素,並在所有元素中調用此函數。 我想要的將是這樣的: 有沒有辦法在我的函數調用之前不使用我的類型強制轉換? ...
[英]Boost::any not empty when used from a pointer
我有以下測試應用程序: 我這樣編譯運行: 輸出為: 我希望所有3個測試的輸出相同。 但事實並非如此。 為什么? 這是錯誤嗎? 嘗試增加1.54.0和1.55.0。 ...
[英]boost::any with structs and unsigned ints
我的問題有幾個部分。 我一直在研究如何/何時使用boost::any 。 我想知道是否可以將struct分配給boost::any變量。 例: 在我看來這是可能的,但這使我想到了下一個問題。 如果這是有效的分配,那么我將如何訪問數據成員x ? var不是struct類型,因 ...
[英]boost::unsafe_any_cast invalid non-null pointer when empty?
我有一段代碼,其中使用boost::unsafe_any_cast<void*>(&boost::any anyInstance)獲取boost::any對象的內容指針。 代碼如下: 不幸的是,調試時,我看到staticResult中的內容指針為NULL(0x000 ...
[英]Is it possible to use boost::any or boost::variant with a boost::pool?
提升::任何: 我嘗試編譯並運行以下代碼來測試: 但是它在 boost::any 析構函數中出現了段錯誤。 提升::變體: 嘗試編譯並運行以下命令: 我收到以下錯誤: a.out:visitation_impl.hpp:207:typename Visitor::result_ ...
[英]How to implement a general pointer type in C++
在C中,可以將數據指針分配給void指針,然后將其轉換回原始類型,該數據指針將被恢復。 語言標准保證這種轉換不會丟失信息。 這通常意味着(不一定,但對大多數平台來說都是如此),void指針的大小與數據指針的大小相同。 因此,可以指望這些事實使用void指針作為異構類型的一般指針,而void ...
[英]Using Eigen::LLT within a templated function
我寫了以下函數: 基本上,我希望能夠調用以下內容: 但是,出現以下錯誤: 我無法弄清楚我做錯了什么。 我有一個類似的ApplyInverseCholesky解決線性系統(即,我需要兩個函數:(i)y = A x和(ii)y = A ^ {-1} x)具有相同的誤差 ...
[英]Type checking of std::map of keys and/or values of type boost::any?
我正在編寫將DBus屬性值轉換為std類型的輔助函數。 為此,要轉換幾種類型,我需要創建一個std::map 。 該地圖將代表DICT型DBus 。 DBUS的DICT類型可以具有任何類型作為鍵,也可以具有任何類型的值。 現在,我需要將其轉換為std::map 。 我正在考慮將DICT ...
[英]Heterogeneous HashMap c++
我要嘗試將其保存在一個HashMap中的數據類型不同。 HashMap將在變量自變量函數內創建。 在struct和Boost ::下的Unions:任何人都不為我工作, 聯合不接受將類作為數據類型。 Boost :: any在我查看varargs時給我錯誤。 有什么建議么 ...
[英]Different key type in a map
對於特定的要求,我想使用不同類型的鍵的映射。 類似於boost:any。 (我有一個舊的gcc版本) 使用提升有可能嗎? 預先感謝 ...
[英]Boost Any to Boost Variant using Boost Preprocessor
在我的項目中,我詳盡地使用了boost::any和boost::variant 。 為此,在我之前的問題Generic function to convert boost::any to boost::variant 中設計了從boost::any到boost::variant的一般轉換例程。 非常 ...
[英]Why don't the any_cast function overloads cause ambiguity?
Boost的<boost/any.hpp>具有: (在其他變體中。)這種組合是否應該在調用中引起歧義,例如boost::any_cast<int>(my_any); ? 我問是因為我是否編寫此程序: 我確實抱怨不明確 : ...
[英]C++: How to create a vector storing vectors of any type?
我想將任何類型的向量存儲在另一個向量中。 因此,例如,我有兩個向量實例,“ std :: vector v1”和“ std :: vector v2”。 我想將它們放入向量中。 我已經這樣嘗試過: 和其他幾種方式,但沒有任何效果。 您知道可能的解決方案嗎? 謝謝! ...
[英]std::unordered_map<boost::any, boost::any> throws annoying compile errors
當我聲明std::unordered_map<boost::any, boost::any>類型的變量時,會引發令人討厭的編譯錯誤。 例如, any.cc : 將上述代碼編譯為g++ any.cc -std=c++11 -I/usr/include/boost會發生很多 ...
[英]Does boost::any need RTTI?
在Boost網站上,我沒有找到關於boost :: any的使用或RTTI的信息。 我在幾個地方讀到這是一個要求,但是后來我建立了一個簡單的測試項目,它在有和沒有RTTI的情況下都可以構建。 那么,boost :: any和類似的類是否需要RTTI及其性能和內存問題? ...
[英]boost::any confusion with pointers vs values
我花了一些時間才弄清楚這一點,但是boost::any的語義令人困惑。 對於值類型,可以這樣使用它: 該代碼清晰易懂,但是在內部將value存儲為副本。 這意味着對於放置在boost::any較大對象,它們將被復制。 同樣,用我替換void*所有函數都將期望,當我修改boost ...