Opened 4 years ago

Closed 4 years ago

#979 closed ожидается проверка (задача сдана)

HW #3

Reported by: fomenko.ivan Owned by: Vasily Alferov
Component: HW #3 (Huffman) Version: 2.0
Keywords: Cc:

Description


Change History (1)

comment:1 Changed 4 years ago by Vasily Alferov

Resolution: задача сдана
Status: assignedclosed

Во-первых, не компилится.

$ make
mkdir -p obj
g++ -std=c++11 -Wall -Werror -c -I include src/main.cpp -o obj/main.o
g++ -std=c++11 -Wall -Werror -c -I include src/Huffman.cpp -o obj/Huffman.o
g++ -std=c++11 -Wall -Werror -c -I include src/HuffmanArchiver.cpp -o obj/HuffmanArchiver.o
g++ -std=c++11 -Wall -Werror -c -I include src/CLI.cpp -o obj/CLI.o
g++ -std=c++11 -Wall -Werror obj/main.o obj/Huffman.o obj/HuffmanArchiver.o obj/CLI.o -o hw_03
g++ -std=c++11 -Wall -Werror -c -I include test/TestMain.cpp test/AutoTest.h include/HuffmanArchiver.h test/doctest.h -o obj/TestMain.o
g++ -std=c++11 -Wall -Werror obj/TestMain.o -o test_hw_03
obj/TestMain.o: file not recognized: file format not recognized
collect2: error: ld returned 1 exit status
make: *** [Makefile:7: test_hw_03] Error 1

Кто ж пишет хедеры в строке компиляции.
Даже если поправить, тесты не собираются, потому что не прилинкованы к объектным файлам остального кода.

По модулю этого работает.

Баллы в табличке умножаются на 0.5.

Корректность 7/9
Тесты 6/8
Архитектура 2/5
Стиль 4/8

Тесты.
Конечно же, их надо писать не в хедере, тогда проблем с компиляцией становится меньше.
Вообще, я весьма удивлён, что у тебя не компилируется, но при этом работает.
Впервые такое вижу.

Не запускаются из другой папки.
Вообще, там stringstream'ы подразумевались.

Архитектура.
Во-первых, CLI что-то запускает. Это не его зона ответсвенности.
Во-вторых, публичные поля в классах — ну такое.

Стиль.
Часть классов называется camel case'ом (HuffmanNode), часть — snake case'ом (bit_accum).

Note: See TracTickets for help on using tickets.