12. Define a class BroodWar The class BroodWar will inherit from the class Starcraft. Starcraft • has a constructor that takes an int representing your registration code. It also has any necessary operators and supports copy control. You should not need to know anything more about the class Starcraft. NB: you are not responsible for defining the Starcraft class. BroodWar has two fields, the player's name and a collection of Zergling pointers. There may be lots of different types of Zerglings, but we won't be responsible for defining those derived classes here. The Zerglings will all be on the heap. Do not worry about how they got there. They just are. You are not responsible for defining the Zergling class. Zerglings support copy control, along with all necessary operators You are only responsible for defining the BroodWar class and providing the following functionality: A constructor taking in the player's name and registration code. Copy control. Yes, all of it. • Naturally, copying should involve making a deep copy. Don't just copy pointers! An output operator. • You may choose the format. Obviously all of the information you have about your BroodWar instance should be included. • Don't worry about printing information contained in the Starcraft class. An equality operator. • Two BroodWar instances are considered equal if all of the corresponding Zerglings are equal, i.e.: • there are the same number of Zerglings each Zergling in one BroodWar matches (is equal to) the Zergling in the same position of the collection in the other BroodWar. NB, the Zerglings do not have to have the same address in memory to be "equal". Given that brood is an instance of BroodWar Then the code: if (brood) { cout « "There be Zerglings!"; } should print out "There be Zerglings!" if and only if that brood has any zerglings.

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter11: Advanced Inheritance Concepts
Section: Chapter Questions
Problem 2GZ
icon
Related questions
Question
Answer question 12 in your blue book.
12. Define a class BroodWar
The class BroodWar will inherit from the class Starcraft.
Starcraft
• has a constructor that takes an int representing your registration code.
• It also has any necessary operators and supports copy control. You should not need to
know anything more about the class Starcraft.
NB: you are not responsible for defining the Starcraft class.
BroodWar has two fields, the player's name and a collection of Zergling pointers. There may
be lots of different types of Zerglings, but we won't be responsible for defining those derived
classes here.
The Zerglings will all be on the heap. Do not worry about how they got there. They just are.
You are not responsible for defining the Zergling class.
Zerglings support copy control, along with all necessary operators
You are only responsible for defining the BroodWar class and providing the following functionality:
A constructor taking in the player's name and registration code.
Copy control. Yes, all of it.
• Naturally, copying should involve making a deep copy. Don't just copy pointers!
An output operator.
• You may choose the format. Obviously all of the information you have about your
BroodWar instance should be included.
Don't worry about printing information contained in the Starcraft class.
An equality operator.
• Two BroodWar instances are considered equal if all of the corresponding Zerglings are
equal, i.e.:
there are the same number of Zerglings
each Zergling in one BroodWar matches (is equal to) the Zergling in the same
position of the collection in the other BroodWar.
NB, the Zerglings do not have to have the same address in memory to be "equal".
Given that brood is an instance of BroodWar
Then the code:
if (brood) { cout « “There be Zerglings!"; }
should print out "There be Zerglings!" if and only if that brood has any zerglings.
Transcribed Image Text:Answer question 12 in your blue book. 12. Define a class BroodWar The class BroodWar will inherit from the class Starcraft. Starcraft • has a constructor that takes an int representing your registration code. • It also has any necessary operators and supports copy control. You should not need to know anything more about the class Starcraft. NB: you are not responsible for defining the Starcraft class. BroodWar has two fields, the player's name and a collection of Zergling pointers. There may be lots of different types of Zerglings, but we won't be responsible for defining those derived classes here. The Zerglings will all be on the heap. Do not worry about how they got there. They just are. You are not responsible for defining the Zergling class. Zerglings support copy control, along with all necessary operators You are only responsible for defining the BroodWar class and providing the following functionality: A constructor taking in the player's name and registration code. Copy control. Yes, all of it. • Naturally, copying should involve making a deep copy. Don't just copy pointers! An output operator. • You may choose the format. Obviously all of the information you have about your BroodWar instance should be included. Don't worry about printing information contained in the Starcraft class. An equality operator. • Two BroodWar instances are considered equal if all of the corresponding Zerglings are equal, i.e.: there are the same number of Zerglings each Zergling in one BroodWar matches (is equal to) the Zergling in the same position of the collection in the other BroodWar. NB, the Zerglings do not have to have the same address in memory to be "equal". Given that brood is an instance of BroodWar Then the code: if (brood) { cout « “There be Zerglings!"; } should print out "There be Zerglings!" if and only if that brood has any zerglings.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Class
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage