---
# System prepended metadata

title: Questions

---

# Questions

- Будет ли работать серриализация/десерриализация на разных платформах

  - Data models (переключения между x32/x64 на Linux). Также можно попросить рассказать про size_t
    - LLP64 or 4/4/8 (int and long are 32-bit, pointer is 64-bit)
    - LP64 or 4/8/8 (int is 32-bit, long and pointer are 64-bit)

  - Little endian / Big endian

- IEventHandler взят с этой статьи на хабре https://habr.com/ru/post/424593/. Соответственно есть смысл погонять человека, насколько он разобрался в чужом коде:
  - Parameter pack (повторит ли он эту запись) https://en.cppreference.com/w/cpp/language/parameter_pack

  ```cpp
  template<class ...TParams>
  class A {
  	virtual void call(TParams... params) = 0;
  };
  ```  
  
  - Указатели на члены класса (или функции класса) (повторит ли он эту запись)

  ```cpp
  template<class TObject, class ...TParams>
  class MethodEventHandler : public IEventHandler<TParams...> {
	  using TMethod = void(TObject::*)(TParams...);
  
    void call(TParams... params) override final
    { (m_obj.*m_method)(params...); }
  };
  ```  

  - Также он тут заиспользовал `final` для функции. Можно спросить вспомнит ли он, что final можно использовать и для функций (я, например, не помнил :( )

- В чем плюс от использования event'ов. Почему бы просто не вызывать методы в `CProjectView`


