add inputs for ex4.1, ex4.3, ex5.2, ex5.3
This commit is contained in:
parent
ec8df55672
commit
b313ad8364
13 changed files with 305 additions and 0 deletions
17
ex4.1/Button.hh
Normal file
17
ex4.1/Button.hh
Normal file
|
@ -0,0 +1,17 @@
|
|||
#ifndef BUTTON_HH
|
||||
#define BUTTON_HH
|
||||
|
||||
#include <iostream>
|
||||
|
||||
class Button {
|
||||
public:
|
||||
|
||||
Button() { std::cout << "Button Constructor " << this << std::endl ; }
|
||||
Button(const Button&) { std::cout << "Button Copy Constructor " << this << std::endl ; }
|
||||
~Button() { std::cout << "Button Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
13
ex4.1/Cable.hh
Normal file
13
ex4.1/Cable.hh
Normal file
|
@ -0,0 +1,13 @@
|
|||
|
||||
#include <iostream>
|
||||
|
||||
class Cable {
|
||||
public:
|
||||
|
||||
Cable() { std::cout << "Cable Constructor " << this << std::endl ; }
|
||||
Cable(const Cable&) { std::cout << "Cable Copy Constructor " << this << std::endl ; }
|
||||
~Cable() { std::cout << "Cable Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
} ;
|
17
ex4.1/Chassis.hh
Normal file
17
ex4.1/Chassis.hh
Normal file
|
@ -0,0 +1,17 @@
|
|||
#ifndef CHASSIS_HH
|
||||
#define CHASSIS_HH
|
||||
|
||||
#include <iostream>
|
||||
|
||||
class Chassis {
|
||||
public:
|
||||
|
||||
Chassis() { std::cout << "Chassis Constructor " << this << std::endl ; }
|
||||
Chassis(const Chassis&) { std::cout << "Chassis Copy Constructor " << this << std::endl ; }
|
||||
~Chassis() { std::cout << "Chassis Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
20
ex4.1/Dialer.hh
Normal file
20
ex4.1/Dialer.hh
Normal file
|
@ -0,0 +1,20 @@
|
|||
#include <iostream>
|
||||
#ifndef DIALER_HH
|
||||
#define DIALER_HH
|
||||
|
||||
#include "Button.hh"
|
||||
|
||||
class Dialer {
|
||||
public:
|
||||
|
||||
Dialer() { std::cout << "Dialer Constructor " << this << std::endl ; }
|
||||
Dialer(const Dialer&) { std::cout << "Dialer Copy Constructor " << this << std::endl ; }
|
||||
~Dialer() { std::cout << "Dialer Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
Button buttons[12] ;
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
16
ex4.1/Earpiece.hh
Normal file
16
ex4.1/Earpiece.hh
Normal file
|
@ -0,0 +1,16 @@
|
|||
#include <iostream>
|
||||
#ifndef EARPIECE_HH
|
||||
#define EARPIECE_HH
|
||||
|
||||
class Earpiece {
|
||||
public:
|
||||
|
||||
Earpiece() { std::cout << "Earpiece Constructor " << this << std::endl ; }
|
||||
Earpiece(const Earpiece&) { std::cout << "Earpiece Copy Constructor " << this << std::endl ; }
|
||||
~Earpiece() { std::cout << "Earpiece Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
25
ex4.1/Handset.hh
Normal file
25
ex4.1/Handset.hh
Normal file
|
@ -0,0 +1,25 @@
|
|||
#include <iostream>
|
||||
#ifndef HANDSET_HH
|
||||
#define HANDSET_HH
|
||||
|
||||
#include "Mouthpiece.hh"
|
||||
#include "Earpiece.hh"
|
||||
#include "Cable.hh"
|
||||
|
||||
class Handset {
|
||||
public:
|
||||
|
||||
Handset() { std::cout << "Handset Constructor " << this << std::endl ; }
|
||||
Handset(const Handset&) { std::cout << "Handset Copy Constructor " << this << std::endl ; }
|
||||
~Handset() { std::cout << "Handset Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
Mouthpiece mouthpiece ;
|
||||
Earpiece earpiece ;
|
||||
Cable cable ;
|
||||
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
22
ex4.1/Housing.hh
Normal file
22
ex4.1/Housing.hh
Normal file
|
@ -0,0 +1,22 @@
|
|||
#include <iostream>
|
||||
#ifndef HOUSING_HH
|
||||
#define HOUSING_HH
|
||||
|
||||
#include "Chassis.hh"
|
||||
#include "Shell.hh"
|
||||
|
||||
class Housing {
|
||||
public:
|
||||
|
||||
Housing() { std::cout << "Housing Constructor " << this << std::endl ; }
|
||||
Housing(const Housing&) { std::cout << "Housing Copy Constructor " << this << std::endl ; }
|
||||
~Housing() { std::cout << "Housing Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
Chassis chassis ;
|
||||
Shell shell ;
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
16
ex4.1/Mouthpiece.hh
Normal file
16
ex4.1/Mouthpiece.hh
Normal file
|
@ -0,0 +1,16 @@
|
|||
#include <iostream>
|
||||
#ifndef MOUTHPIECE_HH
|
||||
#define MOUTHPIECE_HH
|
||||
|
||||
class Mouthpiece {
|
||||
public:
|
||||
|
||||
Mouthpiece() { std::cout << "Mouthpiece Constructor " << this << std::endl ; }
|
||||
Mouthpiece(const Mouthpiece&) { std::cout << "Mouthpiece Copy Constructor " << this << std::endl ; }
|
||||
~Mouthpiece() { std::cout << "Mouthpiece Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
17
ex4.1/Shell.hh
Normal file
17
ex4.1/Shell.hh
Normal file
|
@ -0,0 +1,17 @@
|
|||
#ifndef SHELL_HH
|
||||
#define SHELL_HH
|
||||
|
||||
#include <iostream>
|
||||
|
||||
class Shell {
|
||||
public:
|
||||
|
||||
Shell() { std::cout << "Shell Constructor " << this << std::endl ; }
|
||||
Shell(const Shell&) { std::cout << "Shell Copy Constructor " << this << std::endl ; }
|
||||
~Shell() { std::cout << "Shell Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
25
ex4.1/Telephone.hh
Normal file
25
ex4.1/Telephone.hh
Normal file
|
@ -0,0 +1,25 @@
|
|||
#ifndef TELEPHONE_HH
|
||||
#define TELEPHONE_HH
|
||||
|
||||
#include "Cable.hh"
|
||||
#include "Housing.hh"
|
||||
#include "Dialer.hh"
|
||||
#include "Handset.hh"
|
||||
|
||||
class Telephone {
|
||||
public:
|
||||
|
||||
Telephone() { std::cout << "Telephone Constructor " << this << std::endl ; }
|
||||
Telephone(const Telephone&) { std::cout << "Telephone Copy Constructor " << this << std::endl ; }
|
||||
~Telephone() { std::cout << "Telephone Destructor " << this << std::endl ; }
|
||||
|
||||
private:
|
||||
|
||||
Cable cable ;
|
||||
Housing housing ;
|
||||
Dialer dialer ;
|
||||
Handset handset ;
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
28
ex4.3/String.hh
Normal file
28
ex4.3/String.hh
Normal file
|
@ -0,0 +1,28 @@
|
|||
#ifndef STRING_HH
|
||||
#define STRING_HH
|
||||
|
||||
class String {
|
||||
public:
|
||||
|
||||
String(const char* str="") : _s(0) { insert(str) ; }
|
||||
String(const String& a) : _s(0) { insert(a._s) ; }
|
||||
~String() { delete[] _s ; }
|
||||
|
||||
int length() const { return _len ; }
|
||||
const char* data() const { return _s ; }
|
||||
|
||||
private:
|
||||
|
||||
char* _s ;
|
||||
int _len ;
|
||||
|
||||
void insert(const char* str) { // private helper function
|
||||
_len = strlen(str) ;
|
||||
if (_s) delete[] _s ;
|
||||
_s = new char[_len+1] ;
|
||||
strcpy(_s,str) ;
|
||||
}
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
9
ex5.2/data1.txt
Normal file
9
ex5.2/data1.txt
Normal file
|
@ -0,0 +1,9 @@
|
|||
586
|
||||
2746
|
||||
348946
|
||||
-472
|
||||
72734
|
||||
-283
|
||||
263
|
||||
0
|
||||
4957
|
80
ex5.3/example.txt
Normal file
80
ex5.3/example.txt
Normal file
|
@ -0,0 +1,80 @@
|
|||
The upscale food court in the Time Warner Center can be derided for
|
||||
many reasons, but a lack of clear marking is not among them. From the
|
||||
moment you walk into the center, no matter which entrance you use, you
|
||||
encounter signs pointing the way to the preciously termed "restaurant
|
||||
and bar collection" a few stories up.
|
||||
|
||||
But during a lunchtime visit to one of the restaurants last fall I
|
||||
encountered a well-dressed gentleman, perhaps in his early 60's, who
|
||||
paced before the elevators on the ground level. In a confused voice he
|
||||
asked me the location of the restaurant Per Se, where he had a coveted
|
||||
reservation.
|
||||
|
||||
"The fourth floor," I said. He stared at me quizzically. I gestured to
|
||||
one of those signs. I repeated my answer. Finally he climbed aboard an
|
||||
elevator with me. But I could tell that he still had doubts. He seemed
|
||||
unable to believe that one of Manhattan's most ambitious new
|
||||
restaurants was high above the street in a corner of a shopping mall.
|
||||
|
||||
In fact four of Manhattan's most ambitious new restaurants are in this
|
||||
"vertical retail environment," as its promoters prefer to call
|
||||
it. Their eagerness to euphemize underscores the boldness of their
|
||||
experiment: asking New York diners to consider elevators, escalators
|
||||
and bright indoor lighting appropriate visual preludes to extremely
|
||||
expensive dinners.
|
||||
|
||||
Nearly a year since the center opened it is still too soon to tell
|
||||
whether that experiment will literally pay off. But those restaurants
|
||||
- Per Se, Masa and V Steakhouse on the fourth floor and Café Gray on
|
||||
the third - have been operating long enough for answers to other
|
||||
questions. How crucially is fine dining affected by an unusual
|
||||
physical context? What is it like to cross yards of gleaming marble
|
||||
and brave the glaring seductions of Samsung and Sephora on the way to
|
||||
and from an appointment with foie gras?
|
||||
|
||||
It is usually disconcerting. It is sometimes disorienting. Alongside
|
||||
the restaurants on the fourth floor is a bar, the Stone Rose, whose
|
||||
music echoes up and down the hall, trapped under the same roof. I left
|
||||
Masa one night and felt my post-toro tranquility shatter under the
|
||||
oppressive beat and incongruous lyrics of "Hungry Like the Wolf." I
|
||||
was irritated like the coyote.
|
||||
|
||||
But an hour and then a day later I did not remember Masa less fondly
|
||||
or long to return less ardently. The layout and gestalt of the Time
|
||||
Warner Center were annoyances, but they were ignorable. The center
|
||||
proves that restaurants transcend their trappings, a truth that was
|
||||
often overlooked as culinary connoisseurs fretted about celebrated
|
||||
chefs like Thomas Keller and Jean-Georges Vongerichten setting up
|
||||
kitchens in the kind of structure that often bestrides a highway
|
||||
access road.
|
||||
|
||||
For New Yorkers the center is a jarring development but also a
|
||||
positive one. Without it Mr. Keller, the head chef of Per Se, might
|
||||
not have set up a kitchen here at all. Because the center is a
|
||||
mixed-use development in which the restaurants lend cachet to the
|
||||
residences and office space, Mr. Keller could be offered an economic
|
||||
safety net, a deal that insulated him from financial failure.
|
||||
|
||||
Mr. Vongerichten, the supervising chef of V Steakhouse, benefited from
|
||||
a similar arrangement, and the aggregate glitter of these two helped
|
||||
to lure Masayoshi Takayama, the chef at Masa, and Gray Kunz of Café
|
||||
Gray. The four restaurants that they guide - plus a fifth, under the
|
||||
stewardship of the chef Charlie Trotter, to come sometime over the
|
||||
next year - probably wouldn't exist without their atypical commercial
|
||||
cradle.
|
||||
|
||||
Would they be more appealing at street level, with sidewalks in front
|
||||
and portals that admitted natural light? In most ways, yes. Their odd
|
||||
situations yield unsettling effects. After hours in the dimly lighted
|
||||
fantasy of Per Se, a diner is thrust not into moonbeams and fresh air
|
||||
but into the harshly illuminated, stale reality of the rest of the
|
||||
center. A cold slap punctuates a warm hug.
|
||||
|
||||
Or sometimes the rest of the center is thrust upon a diner. One night
|
||||
I watched a woman and her two teenage daughters, all three dressed in
|
||||
white Capri pants and brightly colored T-shirts, march straight into
|
||||
Masa and then into Per Se, just to have a look. Understandably they
|
||||
treated the exclusive restaurants on the fourth floor the way they had
|
||||
treated stores on the lower three, as crannies of a mall that invited
|
||||
exploration.
|
||||
|
Reference in a new issue