Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;可变类型容器_C++_Variables_Types_Containers - Fatal编程技术网

C++ C++;可变类型容器

C++ C++;可变类型容器,c++,variables,types,containers,C++,Variables,Types,Containers,我需要一种能装一堆东西的容器。我正在创建一个初步的“脚本引擎”,其思想是将所有函数封装在类中。在每个类中,都有一个setup(args容器)函数和一个call()函数。它还包含带有所有数据的变量,这些数据是通过设置功能设置的。问题是,我需要加载函数的部分能够这样做,而不知道它正在调用的函数。它创建一个装满参数和变量的容器,然后将其传递给setup函数,以便设置其变量 问题是我需要某种变体,它可以携带许多不同的类型,并携带变量引用 下面是一些虚构的代码,以显示我想做什么: printFunc* p

我需要一种能装一堆东西的容器。我正在创建一个初步的“脚本引擎”,其思想是将所有函数封装在类中。在每个类中,都有一个setup(args容器)函数和一个call()函数。它还包含带有所有数据的变量,这些数据是通过设置功能设置的。问题是,我需要加载函数的部分能够这样做,而不知道它正在调用的函数。它创建一个装满参数和变量的容器,然后将其传递给setup函数,以便设置其变量

问题是我需要某种变体,它可以携带许多不同的类型,并携带变量引用

下面是一些虚构的代码,以显示我想做什么:

printFunc* pf = new printFunc;
argsContainer* ac = new argsContainer;
ac->addString("hello ");
std::string wString = "world!";
ac->addString(&wString);
pf->setup(ac);
pf->call();

一个字符串集或字符串列表不足以存储参数吗?我需要存储的字符串不止一个。整数、布尔、浮点等。你看过boost的变体吗?看过,但它似乎不喜欢引用。我需要能够修改函数中的变量。您也可以使用
boost::any
试试运气。