struct node {
double val;
node* next;
node* prev;
};
struct List {
node* front;
node* back;
};
|
class StockItem {
private:
std::string description;
int numInStock;
float price;
long itemId;
public:
StockItem(std::string d="", int n=0, float p=0, long i=0) {
description = d; numInStock = n; price = p; itemId = i;
}
void printItem();
};
|
class tree {
private:
struct node {
int value;
node* left;
node* right;
} *root;
void deallocate(node* subtree);
int count(node* subtree, int v);
void print(node* subtree);
void insert(node* &subtree, int v);
public:
tree() { root = NULL; }
~tree() { deallocate(root); }
int count(int v) { return count(root); }
void print() { print(root); }
void insert(int v) { insert(root, v); }
};
|
#include <iostream>
using namespace std;
class parent1 {
public:
virtual void print() = 0;
};
class parent2 {
public:
void print() { cout << "print version 1" << endl; }
};
class child1: public parent1 {
public:
child1() { cout << "start child type 1" << endl; }
~child1() { cout << "end child type 1" << endl; }
void print() { cout << "print version 2" << endl; }
};
class child2: public parent1 {
public:
child2() { cout << "start child type 2" << endl; }
~child2() { cout << "end child type 2" << endl; }
void print() { cout << "print version 3" << endl; }
};
class child3: public parent2 {
public:
child3() { cout << "start child type 3" << endl; }
~child3() { cout << "end child type 3" << endl; }
void print() { cout << "print version 4" << endl; }
};
int main()
{
parent1 *p1 = new child1;
parent1 *p2;
child3 c3;
p1->print();
p2 = new child2;
p2->print();
delete p2;
c3.print();
}
class Circle {
private:
float x, y, radius;
public:
Circle(): x(0), y(0), radius(1) { }
void print();
void setcoords(float newx, float newy);
void setrad(float newrad);
};
|
#include <iostream>
#include <exception>
#include <cmath>
class myExc: public std::exception {
protected:
std::string message;
public:
myExc(std::string msg) { message = msg; }
~myExc() { }
// says what kind of exception it was
void what() { std::cout << message << std::endl; }
};
void f(double val)
{
try {
if (val < 0) {
throw myexc("Negative number");
}
std::cout << sqrt(val) << std::endl;
}
catch (std::exception e) {
std::cout << "exception happened" << std::endl;
}
}
int main()
{
try {
double userData;
cin >> userData;
f(userData);
std::cout << "Bye!" << std::endl;
}
catch (myExc& e) {
e.what();
}
}
|