예제 #1
0
int main() {
  Stash intStash;
  intStash.initialize(sizeof(int));
  for(int i = 0; i < 100; i++)
    intStash.add(&i);
  for(int j = 0; j < intStash.count(); j++)
    cout << "intStash.fetch(" << j << ") = "
         << *(int*)intStash.fetch(j)
         << endl;
  // Holds 80-character strings:
  Stash stringStash;
  const int bufsize = 80;
  stringStash.initialize(sizeof(char) * bufsize);
  ifstream in("CppLibTest.cpp");
  assure(in, "CppLibTest.cpp");
  string line;
  while(getline(in, line))
    stringStash.add(line.c_str());
  int k = 0;
  char* cp;
  while((cp =(char*)stringStash.fetch(k++)) != 0)
    cout << "stringStash.fetch(" << k << ") = "
         << cp << endl;
  intStash.cleanup();
  stringStash.cleanup();
} ///:~
예제 #2
0
int main() {
	Stash s;
	s.initialize(sizeof(double));
	for (int i = -5; i < 16; i++) {
		double d = i+ 0.25;
		s.add(&d);
	}
	cout << s.count() << endl;
	for (int i = 0; i < s.count(); i++)
		cout << *static_cast<double*>(s.fetch(i)) << endl;
	s.cleanup();
}
예제 #3
0
int main() {
  Stash doubleStash;
  doubleStash.initialize(sizeof(double));
  double d = 0.1;
  for(int i = 0; i < 100; i++) {
    doubleStash.add(&d);
    d += 1;
  }
  for(int j = 0; j < doubleStash.count(); j++)
    cout << "doubleStash.fetch(" << j << ") = "
         << *(double*)doubleStash.fetch(j)
         << endl;
  doubleStash.cleanup();
} ///:~