当前位置: 首页>>代码示例>>C++>>正文


C++ Transformable::insert方法代码示例

本文整理汇总了C++中Transformable::insert方法的典型用法代码示例。如果您正苦于以下问题:C++ Transformable::insert方法的具体用法?C++ Transformable::insert怎么用?C++ Transformable::insert使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Transformable的用法示例。


在下文中一共展示了Transformable::insert方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: unserialize

unsigned long Serialization::unserialize(const std::vector<char> &buf, Transformable &tr_data, unsigned long start_loc)
{
	// delete all existing items
	tr_data.clear();
	unsigned long names_arg_sz;
	unsigned long n_rec;
	unsigned long bytes_read;
	size_t i_start = 0;
	// get size of names record
	i_start = start_loc;
	w_memcpy_s(&names_arg_sz, sizeof(names_arg_sz), buf.data()+i_start, sizeof(names_arg_sz));
	i_start += sizeof(names_arg_sz);
	unique_ptr<char[]> names_buf(new char[names_arg_sz]);
	w_memcpy_s(names_buf.get(), sizeof(char)*names_arg_sz,  buf.data()+i_start, sizeof(char)*names_arg_sz);
	i_start += sizeof(char)*names_arg_sz;
	w_memcpy_s(&n_rec, sizeof(n_rec),  buf.data()+i_start, sizeof(n_rec));
	i_start += sizeof(n_rec);
	// build transformable data set
	double *value_ptr = (double *) ( buf.data()+i_start);
	vector<string> names_vec;
	tokenize(strip_cp(string(names_buf.get(), names_arg_sz)), names_vec);
	assert(names_vec.size() == n_rec);
	for (unsigned long i=0; i< n_rec; ++i)
	{
		tr_data.insert(names_vec[i], *(value_ptr+i));
	}
	bytes_read = i_start + n_rec * sizeof(double);
	return bytes_read;
}
开发者ID:odellus,项目名称:pestpp,代码行数:29,代码来源:Serializeation.cpp

示例2: reverse

void TranFixed::reverse(Transformable &data)
{
	for (map<string,double>::iterator b=items.begin(), e=items.end(); b!=e; ++b)
	{
		data.insert(b->first, b->second);
	}
}
开发者ID:,项目名称:,代码行数:7,代码来源:

示例3:

void TranFixed::d2_to_d1(Transformable &del_data, Transformable &data)
{
	for (map<string, double>::iterator b = items.begin(), e = items.end(); b != e; ++b)
	{
		del_data.insert(b->first, 0.0);
	}
	reverse(data);
}
开发者ID:,项目名称:,代码行数:8,代码来源:

示例4: read_data_file

void read_data_file(const string &filename, Transformable &data)
{
	ifstream fin;
	fin.open(filename);
	string line;
	string name;
	double value;
	data.clear();
	while (getline(fin, line))
	{
		vector<string> tokens;
		pest_utils::strip_ip(line);
		if (!line.empty() && line[0] != '#')
		{
			pest_utils::tokenize(line, tokens);
			name = pest_utils::upper_cp(tokens[0]);
			pest_utils::convert_ip(tokens[1], value);
			data.insert(name, value);
		}
	}
	fin.close();
}
开发者ID:dlebauer,项目名称:pestpp,代码行数:22,代码来源:ascii2pbin.cpp


注:本文中的Transformable::insert方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。