extern int bar(int a, char *b);
extern "C" antes de las declaraciones de
funciones de archivos-objeto de C.
class Stack {
public:
void Push(int value);
bool Full();
private:
int top;
int stack[10];
}
void Stack::Push (int value) {
ASSERT(! Full()); // desde Nachos
stack[top++] = value;
}
bool Stack::Full() {
return (top == 10);
}
s->Push(arg).
ReadyToRun(this).
Stack *s = new Stack(arg). new es como
malloc.
class Stack {
public:
Stack(int sz);
~Stack();
void Push(int value);
bool Full();
private:
int top;
int size;
int *stack;
}
Stack::Stack(int sz) {
size = sz;
top = 0;
stack = new int[size]; // Uso de new
}
delete s1.
Stack::~Stack() {
delete [] stack;
}
delete [] significa que queremos eliminar un array (en vez
de solamente un elemento).
Stack *s = ...
//.
class Stack {
bool Full() const;
...
}
También para las variables que no se pueden modificar:
const int MaxSize = 10;
>> y <<:
cout << "El resultado es " << xyz; int foo1, foo2; cin >> foo1 >> foo2;