C FlashDrive PLEASE show 3 files 1maincpp 2flashdrive20h 3fl

C++ FlashDrive

PLEASE show 3 files!!!!

1---main.cpp

2---flashdrive_2_0.h

3---flashdrive_2_0.cpp

FlashDrive

Sample Driver Code

FlashDrive( );
FlashDrive( int capacity, int used, bool pluggedIn );

void plugIn( );
void pullOut( );
void writeData( int amount );
void eraseData( int amount );
void formatDrive( );

int getCapacity( );
void setCapacity( int amount );

int getUsed( );
void setUsed( int amount );

bool isPluggedIn( );

#include
#include \"FlashDrive.h\"
using namespace std;
using namespace cs52;

void main( )
{
cs52::FlashDrive drive1( 10, 0, false );
cs52::FlashDrive drive2( 20, 0, false );

drive1.plugIn( );
drive1.formatDrive( );
drive1.writeData( 5 );
drive1.pullOut( );

drive2.plugIn( );
drive2.formatDrive( );
drive2.writeData( 1 );
drive2.pullOut( );

cs52::FlashDrive combined = drive1 + drive2;
cout << \"this drive\'s filled to \" << combined.getUsed( ) << endl;

cs52::FlashDrive other = combined – drive1;
cout << \"the other cup\'s filled to \" << other.getUsed( ) << endl;

if (combined > other) {
cout << \"looks like combined is bigger...\" << endl;
}
else {
cout << \"looks like other is bigger...\" << endl;
}

if (drive2 > other) {
cout << \"looks like drive2 is bigger...\" << endl;
}
else {
cout << \"looks like other is bigger...\" << endl;
}

if (drive2 < drive1) {
cout << \"looks like drive2 is smaller...\" << endl;
}
else {
cout << \"looks like drive1 is smaller...\" << endl;
}
}

int my_StorageCapacity;
int my_StorageUsed;
bool my_IsPluggedIn;

FlashDrive

Sample Driver Code

FlashDrive( );
FlashDrive( int capacity, int used, bool pluggedIn );

void plugIn( );
void pullOut( );
void writeData( int amount );
void eraseData( int amount );
void formatDrive( );

int getCapacity( );
void setCapacity( int amount );

int getUsed( );
void setUsed( int amount );

bool isPluggedIn( );

#include
#include \"FlashDrive.h\"
using namespace std;
using namespace cs52;

void main( )
{
cs52::FlashDrive drive1( 10, 0, false );
cs52::FlashDrive drive2( 20, 0, false );

drive1.plugIn( );
drive1.formatDrive( );
drive1.writeData( 5 );
drive1.pullOut( );

drive2.plugIn( );
drive2.formatDrive( );
drive2.writeData( 1 );
drive2.pullOut( );

cs52::FlashDrive combined = drive1 + drive2;
cout << \"this drive\'s filled to \" << combined.getUsed( ) << endl;

cs52::FlashDrive other = combined – drive1;
cout << \"the other cup\'s filled to \" << other.getUsed( ) << endl;

if (combined > other) {
cout << \"looks like combined is bigger...\" << endl;
}
else {
cout << \"looks like other is bigger...\" << endl;
}

if (drive2 > other) {
cout << \"looks like drive2 is bigger...\" << endl;
}
else {
cout << \"looks like other is bigger...\" << endl;
}

if (drive2 < drive1) {
cout << \"looks like drive2 is smaller...\" << endl;
}
else {
cout << \"looks like drive1 is smaller...\" << endl;
}
}

int my_StorageCapacity;
int my_StorageUsed;
bool my_IsPluggedIn;

Background: In C++, many of the keyboard symbols that are used between two variables can be given a new meaning. This feature is called operator overloading and it is one of the most popular C++features. Any class can choose to provide a new meaning to a keyboard symbol. Not every keyboard letter is redefinable in this way, but many of the ones we have encounted so far are, like+ and and and/and> and A sample pile of driver code is shown below to assist you in this effort. Operators+and - should create a new FlashDrive from the two arguments by combining their contents. If you wind up with a FlashDrive with a value stored that exceeds its capacity, print out an error message. If you wind up with a negative capacity or storage value, print out an error message. Operators and>must return bool and should compare the holdings of the two arguments to determine which one is bigger. My strong advice is to work one operator at a time, as these steps are very error-prone and lead to many, many compile errors. Finally,I would also like you to place FlashDrive in namespace cs52 which will affect the resulting driver code as well as the class\'.h and.cpp files.

Solution

#include <iostream>

#include <string>

#include <cstdlib>

using namespace std;

class SodaCan {

public:

SodaCan();

SodaCan(string brand, int size, int contents);

bool isEmpty();

void pourInSoda(int amount);

void drink(int amount);

void setSize(int size);

int getSize() const;

string getBrand() const;

void setBrand(string brand);

int getContents() const ;

friend SodaCan operator+ (const SodaCan& left, const SodaCan& right);

friend SodaCan operator- (const SodaCan& left, const SodaCan& right);

friend bool operator> (const SodaCan& left, const SodaCan& right);

friend bool operator< (const SodaCan& left, const SodaCan& right);

friend bool operator>= (const SodaCan& left, const SodaCan& right);

friend bool operator<= (const SodaCan& left, const SodaCan& right);

friend bool operator== (const SodaCan& left, const SodaCan& right);

friend bool operator!= (const SodaCan& left, const SodaCan& right);

friend std::ostream& operator <<(std::ostream& os, const SodaCan* my_can);

friend std::istream& operator>>(std::istream& ins, SodaCan *&can);

private:

string my_Brand;

int my_Size;

int my_Contents;

};

int main(){

SodaCan myPepsi;

SodaCan yourDietCoke;

SodaCan bigGulp;

SodaCan junk;

bigGulp.setBrand(\"Pepsi\");

bigGulp.setSize(128);

myPepsi.setBrand(\"Pepsi\");

myPepsi.setSize(12);

yourDietCoke.setBrand(\"Coke\");

yourDietCoke.setSize(12);

myPepsi.pourInSoda(2);

yourDietCoke.pourInSoda(3);

bigGulp.pourInSoda(64);

/// junk should have 76 ounces

junk = bigGulp + myPepsi;

cout << junk;

if (junk > bigGulp) {

cout << \"junk


Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site