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

Выбор шаблонного варианта для аргумента-массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка "Недопустимый else без парного if" http://www.cyberforum.ru/cpp/thread1273030.html
#include <iostream> #include <stdio.h> using namespace std; // ВЫВОД МАТРИЦЫ НА ЭКРАН void print(int **Q, int x, int y) { int i, j; for (i = 0; i<x; i++)
C++ Unexpected() не вызывается Всем привет! Читаю бессмертный труд Страуструпа Язык программирования С++издания 2011 года (п.14.6 о спецификации исключений): Если во время своего выполнения она (функция со спецификацией исключений) попробует произвести действия, нарушающие объявленную гарантию, такая попытка приведет к вызову стандартной функции std::unexpected (). По умолчанию, функция std::unexpected() вызывает... http://www.cyberforum.ru/cpp/thread1273018.html
Разделить функцию на две C++
Выполнил контрольную. Все работает как надо. Но потом заметил, что пропустил в условии "минимум 2 функции". Помогите без потерь переместить кусок кода из 1 функции в другую. Желательно тот кусок, который "//вычисляю строку по убыванию и записываю ее номер". #include <stdio.h> int dop(int,int,int,int); #define nn 20 int main() { int mas,l,h,i,j,k,s;
C++ Найти среднее арифметическое массива
Для B найти среднее арифметическое подсказка: S2(вещественное)=sum(целое)/n 1) сделать sum вещ. 2) s2=1.+sum/n 3)s2=float(sum)/n
C++ Перевод из 6-ричной системы в десятичную http://www.cyberforum.ru/cpp/thread1272994.html
На вход программе подается строка символов, оканчивающаяся точкой, и состоящая из ненулевого количества неотрицательных целых чисел, записанных в 6-ричной системе счисления. Каждые 2 соседних числа разделены непустой последовательность пробелов и/или :. Каждое число состоит не более, чем из 5-ти разрядов, ведущие нули и знак + не используется. Общая длина строки, включая точку, не должна...
C++ Создание шахматного поля Добрый вечер. Я пытаюсь написать простую игру шахматы в ООП, с графикой. Начала с создание доски и описания классов: поле(field) и клетки черные и белые(cell). Я не очень понимаю как использовать графику. Хочу создать поле как массив клеток 8х8. Я попыталась описать классы, вот что получилось. Помогите, пожалуйста, дописать, чтобы строились клетки. Я понимаю, что это делается как-то через функции... подробнее

Показать сообщение отдельно
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6234 / 2963 / 288
Регистрация: 04.12.2011
Сообщений: 7,908
Записей в блоге: 3
12.10.2014, 13:06     Выбор шаблонного варианта для аргумента-массива
Цитата Сообщение от DrOffset Посмотреть сообщение
Вариант T & слишком общий, вместо T здесь может быть что угодно, не только массив.
Тогда он должен бы драться с любым аргументом (без модификаторов), но спасает отсутствие явного указания размера. То есть лень ему вот и не дерётся.
Цитата Сообщение от DrOffset Посмотреть сообщение
Вариант с T (&t)[N] - такой же как как вариант с T * они одно значно квалифицируют сущность аргумента.
Сущность это как-то религиозно что ли. Указатель и ссылка это же не одно и то же, даже если внутренне ссылка на массив это указатель + размер... Почему дерутся? Усиление однозначности порождает неоднозначность несмотря на различие типов? Наверное дело в вызове. Получив имя трудно понять просят ли передать по ссылке или по указателю. Я думаю в первом случае это противоречие тоже есть, но трудоемкость (компилятору лень) это скрывает. Вообще, создаётся впечатление, что семантика ссылки на массив конфликтует с семантикой ссылки как таковой применительно к шаблонам. Вдобавок неявное преобразование имени к ссылке или указателю не определено приоритетно (иначе не понимаю в чем неоднозначность) и чтобы разные компиляторы не делали как придётся, одновременное сосуществование признано несъедобным. Вообще набор правил вывода наверное если не самое сложное, что есть, то во всяком случае достаточно сложная штука. Буду читать. Спасибо, DrOffset.
 
Текущее время: 11:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru