Могут ссылки проекта компиляции Visual Studio в другую папку тогда основной .exe

Один из способов сделать это - использовать функтор. Вот простой пример:

#include <iostream>

class counter
{
public:
  unsigned operator()(unsigned m, unsigned n) 
  {
    // increment the count on every iteration 
    ++count; 

    // rest of the function
    if (m == 0) 
    {
      return n + 1;
    }
    if (n == 0) 
    {
      return operator()(m - 1, 1);
    }
    return operator()(m - 1, operator()(m, n - 1));
  }

  std::size_t get_count() const
  {
    return count;
  }

private:
  // call count
  std::size_t count = 0;
};


int main()
{
  auto f  = counter();
  std::cout << "Result: " << f(4, 0) << "\nNumber of calls: " << f.get_count() << std::endl;
  return 0;
}

Вывод:

Result: 13
Number of calls: 107

Поскольку счет хранится в самом объекте, пользователь не может перезаписать его.

10
задан Jon Kragh 27 February 2009 в 20:07
поделиться

1 ответ

Похоже, что это - довольно интенсивный процесс.

Сначала установите Локальное свойство Копии ссылки на ложь так, чтобы .dlls не были скопированы в bin\Debug папку.

Затем создайте assemblyBinding\probing элемент в своем app.config, чтобы дать времени выполнения команду искать dlls в папке Lib

Затем создайте действие постсборки для копирования необходимого dlls в \bin\Debug\Lib папку.

7
ответ дан 4 December 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: