Форум программистов, компьютерный форум CyberForum.ru

Непонятен синтаксис шаблонов из кода boost для вычисления факториала - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написание програмы по полёту ракеты http://www.cyberforum.ru/cpp-beginners/thread1798523.html
Очень надеюсь, что найдётся человек, которому не лень помочь. Просто я сильно провтыкался с дэдлайном в ВУЗе и сейчас в форсированом режиме делаю курсовую, так-как бедный студент приобрести не могу, но если появятся деньги могу отблагодарить за помощь. Курсовая довольно-таки обширная и програма это лишь малая часть, но с ней проблем у меня с головой, ведь языки програмирования знаю очень слабо,...
C++ Вектор выходит за диапазон Здравствуйте. :) Как сделать так чтобы вектор не выходил за диапазон? #include <iostream> #include <vector> using namespace std; int main() { int k; http://www.cyberforum.ru/cpp-beginners/thread1798512.html
C++ Com port и С++
Хочу отослать данные по ком порту на контроллер.Вот только беда,не отсылается всё сообщение,а только один символ.Как это исправить? LPCTSTR sPortName = L"COM4"; CString ed=L"asdasd"; CString q=L"k"; hSerial = ::CreateFile(sPortName,GENERIC_READ | GENERIC_WRITE,0,0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0); ed=ed+q; char buffer;
Сформировать массив неповторяющихся элементов исходного массива C++
Сформировать массив из неповторяющихся элементов исходного массива. Например : Из массива A = {2,5,2,6,8,5,1,9,4,3 } нужно получить массив B ={6,8,1,9,4,3,0,0,0,0}. Или B={6,8,1,9,4,3) что даже лучше. Цифры могут быть любыми как и размер исходного массива. Мой код: #include <iostream> #include <clocale> using namespace std; void main() { int A = { 2,5,2,6,8,5,1,9,4,3 }, B = { 0 },...
C++ Функция strlen перед вызовом моей функции портит строку в конфигурации Release MS Visual C++ 2013 http://www.cyberforum.ru/cpp-beginners/thread1798377.html
Написал функцию RemoveChars, которая убирает символы перевода строки в строке. Если в конфигурации проекта Visual C++ в Microsoft Visual Studio 2013 установлено Debug, проблем нет. Если перед вызовом функции RemoveChars вызывается функция strlen, а после нее RemoveChars, в конфигурации Release RemoveChars выдает пустую строку или короткую строку с мусором. RemoveChars(str1) выдает нормальную...
C++ Сгенерировать заголовочный файл для .lib (созданной в Maple) Доброго, форумчане! у меня нет опыта в кодинге на с++ и это мой первый пост) хочется подключить lib файл (созданный в maple) к .net проекту. Основываюсь на этой статье для начало реализовал на vs2010 пример из статьи и открыл в хекс редакторе и обнаружил некоторую закономерность в результате которого я смог написать заголовочный файл к простенькому примеру но с lib от maple все иначе... подробнее

Показать сообщение отдельно
cyberk20
0 / 0 / 0
Регистрация: 04.12.2015
Сообщений: 21
26.08.2016, 02:50  [ТС]     Непонятен синтаксис шаблонов из кода boost для вычисления факториала
Цитата Сообщение от DrOffset Посмотреть сообщение
Т.е. типы void(int) и void(*)(int) - это разные типы.
Разбора этого для новичков, честно говоря, не знаю, но это все общие правила типизации в с++ и они логично выводятся при уверенном ее понимании.
Скажите в чем разница между указателем на функцию и просто типом функция? "Тип функция" - это нечто вроде "константный указатель на функцию" ??

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <iostream>
 
using std::cin;
using std::cout;
using std::endl;
 
template<typename T>
struct S
{};
 
template<typename T, typename U>
struct S<T(U)>
{
   S(T argName(U))
      : fieldName(argName)
   {
   }
 
   void call(U val)
   {
      cout << fieldName(val) << endl;
   }
 
private:
   T (*fieldName)(U);
};
 
int foo(int i)
{
   cout << __FUNCTION__ << " : " << i << endl;
   return i+1;
}
 
int main()
{
   S<int(int)> s(foo);
 
   s.call(100);
 
   string ss; cin >> ss; cout << "\n\tsee ya\n" << endl;
   system("pause");
   return EXIT_SUCCESS;
}
 
Текущее время: 05:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru