Repo exploration for overloading ops in C++ Activity
|Title||Exploring a C++ GitHub repository to learn about operator overloading|
|Overview||Student will search a repo to find a specific class that implements infinite precision arithmetic and answer questions about it|
|Prerequisite Knowledge||Basic CS1 background, including basic C++ class programming concepts|
|Learning Objectives||The student should be able to search GitHub repositories in general; to read code and understand enough to know what overloaded operators do; to understand what inline functions are and when it is appropriate to use them; and to understand the advantages of using overloaded C++ operators and how to create them.|
Is there background reading material?
Are there other activities the student should have done first?
What is the rationale for this activity?
Include helpful hints to faculty here.
What should the student do?
What will the student hand in?
How will the activity be graded?
How will learning will be measured?
Include sample assessment questions/rubrics.
|Criteria||Level 1 (fail)||Level 2 (pass)||Level 3 (good)||Level 4 (exceptional)|
What should the instructor know before using this activity?
What are some likely difficulties that an instructor may encounter using this activity?
|ACM Knowledge Area/Knowledge Unit||What ACM Computing Curricula 2013 knowledge area and units does this activity cover? ACM_Body_of_Knowledge|
|ACM Topic||What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf|
|Level of Difficulty||Is this activity easy, medium or challenging?|
|Estimated Time to Completion||How long should it take for the student to complete the activity?|
|Materials/Environment||What does the student need? Internet access, IRC client, Git Hub account, LINUX machine, etc.?|
|Author(s)||Who wrote this activity?|
|Source||Is there another activity on which this activity is based? If so, please provide a link to the original resource.|
|License||Under which license is this material made available? (http://creativecommons.org/licenses/)|
Suggestions for Open Source Community:
Suggestions for an open source community member who is working in conjunction with the instructor.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License