Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#157 closed ожидаются исправления (задача сдана)

HA-5

Reported by: Волков Даниил Owned by: Vladimir Rutsky
Priority: проверка Milestone:
Component: HA#5 function Version: 1.0
Keywords: std::function, function Cc:

Description

Implements std::function interface

Please, check my work.

Change History (9)

comment:1 Changed 7 years ago by cpptester

Type: ожидается проверкаожидаются исправления

Tested revision 933 by volkov.daniil.

Smoke tests

test

stage

result

info

log

run_function_smoke_test.cpp

gcc62

WARNING

run_function_smoke_test-gcc62.log

run

SUCCESS

valgrind

SUCCESS

run_function_smoke_test-valgrind.log

gcc62-asan

WARNING

run_function_smoke_test-gcc62-asan.log

asan

SUCCESS

clang-san

FAILURE

run_function_smoke_test-clang-san.log

Common header used in some tests: common.h

comment:2 Changed 7 years ago by Волков Даниил

Type: ожидаются исправленияожидается проверка

comment:3 Changed 7 years ago by cpptester

Type: ожидается проверкаожидаются исправления

Tested revision 1011 by volkov.daniil.

Smoke tests

test

stage

result

info

log

run_function_smoke_test.cpp

gcc62

WARNING

run_function_smoke_test-gcc62.log

run

SUCCESS

valgrind

SUCCESS

run_function_smoke_test-valgrind.log

gcc62-asan

WARNING

run_function_smoke_test-gcc62-asan.log

asan

SUCCESS

clang-san

FAILURE

run_function_smoke_test-clang-san.log

Common header used in some tests: common.h

comment:4 Changed 7 years ago by Волков Даниил

Type: ожидаются исправленияожидается проверка

comment:5 Changed 7 years ago by cpptester

Type: ожидается проверкаожидаются исправления

Tested revision 1014 by volkov.daniil.

Smoke tests

test

stage

result

info

log

run_function_smoke_test.cpp

gcc62

WARNING

run_function_smoke_test-gcc62.log

run

SUCCESS

valgrind

SUCCESS

run_function_smoke_test-valgrind.log

gcc62-asan

WARNING

run_function_smoke_test-gcc62-asan.log

asan

SUCCESS

clang-san

SUCCESS

san

SUCCESS

Common header used in some tests: common.h

comment:6 Changed 7 years ago by Vladimir Rutsky

Замечания:

  1. Не используйте operator , для разделения команд, когда можно использовать блок команд, разделённых точкой с запятой:
  if (sizeof(functor_holder<F>) < BUFFER_SIZE) 
    fun_type = SMALL_FUNCTOR, new(small_functor) functor_holder<F>(fun);
  else 
    pfholder_.reset(new functor_holder<F>(fun)), fun_type = FUNCTION;

обычно на одной строке одна команда, и ваш код хуже читается, чем:

  if (sizeof(functor_holder<F>) < BUFFER_SIZE)
  {
    fun_type = SMALL_FUNCTOR;
    new(small_functor) functor_holder<F>(fun);
  }
  else 
  {
    pfholder_.reset(new functor_holder<F>(fun));
    fun_type = FUNCTION;
  }

comment:7 Changed 7 years ago by cpptester

Tested revision 1014 by volkov.daniil.

All tests passed. Good job!

comment:8 Changed 7 years ago by Vladimir Rutsky

Resolution: задача сдана
Status: newclosed
  1. Нет необходимости делать define на какое-то конкретное значение:
#define FN_HPP 1

достаточно, просто:

#define FN_HPP

Решение зачтено.

comment:9 Changed 7 years ago by Vladimir Rutsky

Milestone: ha5-deadline

Milestone ha5-deadline deleted

Note: See TracTickets for help on using tickets.