dataset.cpp

来自「Oracle调用接口」· C++ 代码 · 共 71 行

CPP
71
字号
#include "DataSet.h"DataSet::DataSet() : ObjectContainer(DATASET) { 	current_row=0;}DataSet::~DataSet() {	for(int i=0;i<data.size();i++) {		map<string,TemplateObject *>::const_iterator ci=data[i].begin();		while(ci!=data[i].end()) {			delete ci->second;			ci++;		}		data[i].clear();	}	data.clear();}TemplateObject *DataSet::getVal(const string &key) {	if(strict) {		map<string,TemplateObject *>::const_iterator ci=(data[current_row]).find(key);		if(ci==(data[current_row]).end()) throw TemplateError("Error: '"+key+"' not defined in this scope");	}	return (data[current_row])[key];}bool DataSet::hasKey(const string &key) {	map<string,TemplateObject *>::const_iterator ci=(data[current_row]).find(key);	if(ci==(data[current_row]).end()) {		return false;	} else {		return true;	}}void DataSet::add(const string &key,const string val) {	TemplateVariable *t = new TemplateVariable(val);	(data[current_row])[key]=t;}void DataSet::add(const string &key,int val) {	TemplateVariable *t = new TemplateVariable(val);	(data[current_row])[key]=t;}void DataSet::add(const string &key,double val) {	TemplateVariable *t = new TemplateVariable(val);	(data[current_row])[key]=t;}void DataSet::add(const string &key,DataSet *val) {	(data[current_row])[key]=val;}void DataSet::setCurrentRow(int row) {	current_row=row;}void DataSet::newRow() {	map<string,TemplateObject *> m;	current_row=data.size();	data.push_back(m);}int DataSet::getSize() {	return data.size();}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?