ECS 036B: Software Development and Object-Oriented Programming in C++ - Homework 5: IOT Thing
USUC DavisECS 036BECS36BSoftware Development and Object-Oriented Programming in C++IOT ThingC++
ECS 36b Homework #5 (programming, 5%)
For this homework, we will experiment programs related to memory. This is a two-persons team project.
CourseNana.COM
Your task is to write a C++ program such that it will create an IOT_Thing object, like in ml_IOT_Thing.cpp, and your program will print the addresses of every component (vtable pointers for each of child/parent/grandparent classes, and the attributes). You need to go through the same process for the following four cases –
(1) Single inheritance, (2) Single Virtual Inheritance, (3) Multiple Inheritance (both Thing and Another_Thing), and finally (4) Virtual Inheritance involving both Thing and Another_Thing.
CourseNana.COM
For each case, you should have a separate program. And, your output should be similar to the Clang tool we presented in the class, but you need to add memory addresses to each LINE of the output below –
g++ -cc1 -std=c++14 -fdump-record-layouts ...
CourseNana.COM
*** Dumping AST Record Layout
0 | class IOT_Thing
0 | (IOT_Thing vtable pointer)
8 |class IP_Address connected
8 |unsigned int addr
48 | class Core (virtual base)
48 | unsigned int class_id
16 | class Thing (virtual base)
16 | (Thing vtable pointer)
24 | unsigned int model
28 | unsigned int sequence_num
32 | class GPS_DD location
32 | double latitude
40 | double longitude
CourseNana.COM
US代写,UC Davis代写,ECS 036B代写,ECS36B代写,Software Development and Object-Oriented Programming in C++代写,IOT Thing代写,C++代写,US代编,UC Davis代编,ECS 036B代编,ECS36B代编,Software Development and Object-Oriented Programming in C++代编,IOT Thing代编,C++代编,US代考,UC Davis代考,ECS 036B代考,ECS36B代考,Software Development and Object-Oriented Programming in C++代考,IOT Thing代考,C++代考,UShelp,UC Davishelp,ECS 036Bhelp,ECS36Bhelp,Software Development and Object-Oriented Programming in C++help,IOT Thinghelp,C++help,US作业代写,UC Davis作业代写,ECS 036B作业代写,ECS36B作业代写,Software Development and Object-Oriented Programming in C++作业代写,IOT Thing作业代写,C++作业代写,US编程代写,UC Davis编程代写,ECS 036B编程代写,ECS36B编程代写,Software Development and Object-Oriented Programming in C++编程代写,IOT Thing编程代写,C++编程代写,USprogramming help,UC Davisprogramming help,ECS 036Bprogramming help,ECS36Bprogramming help,Software Development and Object-Oriented Programming in C++programming help,IOT Thingprogramming help,C++programming help,USassignment help,UC Davisassignment help,ECS 036Bassignment help,ECS36Bassignment help,Software Development and Object-Oriented Programming in C++assignment help,IOT Thingassignment help,C++assignment help,USsolution,UC Davissolution,ECS 036Bsolution,ECS36Bsolution,Software Development and Object-Oriented Programming in C++solution,IOT Thingsolution,C++solution,