Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ На плоскости заданы множество точек А и множество прямых В (каждая прямая задается значениями коэффициентов ур На плоскости заданы множество точек А и множество прямых В (каждая прямая задается значениями коэффициентов уравнения). Найти две такие различные точки из А, что проходящая через них прямая параллельна наибольшему количеству прямых из В. Подскажите пожалуйста, с чего начать? https://www.cyberforum.ru/ cpp-beginners/ thread1439390.html C++ Программа колокол
Данная программа должна из массива наименьший элемент перемещать на 1 место, следующий наименьший на последнее, потом другой из оставшихся наименьших на 2е, а другой из оставшихся на предпоследнее. И так вплоть до конца списка. Программа не работает... помогите с ошибками) #include <iostream> #include <conio.h> using namespace std; int main() { int x, c, m1, m2, B, max; cout <<...
C++ Invalid allocation size 4294967295 bytes https://www.cyberforum.ru/ cpp-beginners/ thread1439361.html
Здравствуйте! Пытаюсь реализовать алгоритм обхода Грэхема. При запуске приложения появляется критическая ошибка: Invalid allocation size 4294967295 bytes.. Появляется она из-за этой функции: cpoint* CREATE_STEK(cpoint *STEK, cpoint *AP) { if (a >= m) return STEK; if (isLeft(STEK, STEK, AP) == 1) { STEK = addSTEK(AP, STEK);
C++ Как отбросить последние символы строки https://www.cyberforum.ru/ cpp-beginners/ thread1439351.html
У меня есть строка. В ней, ну пусть 20 символов. А мне только первые 10 нужны. Подскажите наиболее простой способ отбросить последние 10 символов.
C++ Импорт значений из txt файла в dll
Подскажите пожалуйста, как можно импортировать данные из txt файла в dll data,... #include <windows.h> #include <math.h> #include <stdlib.h> #include <string.h> #include <stdio.h> #pragma warning ( disable : 4996 ) // functions like strcpy are now deprecated for security reasons
C++ Чтение файла через ifstream в stringstream Помогите разобраться, есть функция LOAD_DATA(std::string path_File) для чтения файла по пути открываю файл через ifstream, и не могу передать чтение методам читающий файл по по stringstream для выполнения обратной задачи функции SAVE_DATA, ф-ция открыват фаил по ofstream потом вызываю функции формирующие stringstream которые записываю в открытый фаил SAVE_DATA(std::string path_File) {... https://www.cyberforum.ru/ cpp-beginners/ thread1439346.html
C++ Определить количество числительных в строке Люди добрые, помогите пожалуйста. Приму любую помощь. Задача такая: Определить количество числительных в строке C++. Спасибо всем кто отпишется. https://www.cyberforum.ru/ cpp-beginners/ thread1439334.html Решение СЛАУ методом вращения C++
Доброго времени суток, товарищи. Имеется задание: дано интегральное уравнение: U(x) + I ( K(x,s)U(s)ds= f(x) ( I - определённый интеграл от произведения функций K и U, взятый по переменной s в пределах от a до b). Интеграл заменяется формулой приближённого интегрирования ( в моём случае формула правых прямоугольников). Получается такая сумма: Ui+ (сумма по j от 1 до...
C++ Число прописью Помогите сделать программу которая пишет числа прописью от 1 до 1000000, через оператор switch https://www.cyberforum.ru/ cpp-beginners/ thread1439326.html C++ Нахождение кратчайшего пути Нужно сделать программу,чтоб она находила кратчайший путь от города 1 до города 2 на карте. Как реализовать в коде не знаю, помогите. Была идея присвоить каждому городу свою координату и задать все расстояния https://www.cyberforum.ru/ cpp-beginners/ thread1439322.html
Округление числа C++
Кто-нибудь может подробно-подробно объяснить, как округлять числа в C++. А то я то, что причитал, ничего не понял. Вот у меня -3,2356784521. Мне до тысячных надо округлить.
C++ Редактирование структуры по номеру записи Короче говоря, есть структура, которая читается из текстового файла, записывается в бинарный и выводится на экран. Пользователь вводит номер записи, которую нужно отредактировать и редактирует... Файл такой: 1 Фамилия Имя Отчество Код Год ну и т.д. 2 Фамилия(2) Имя(2) Отчество(2) Код Год...... Так вот, ума не приложу по поводу редактирования. Подскажите пожалуйста. Вот что есть:... https://www.cyberforum.ru/ cpp-beginners/ thread1439312.html
18842 / 9841 / 2408
Регистрация: 30.01.2014
Сообщений: 17,284
06.05.2015, 19:43 0

Шаблоны, макросы, размер массива - C++ - Ответ 7578661

06.05.2015, 19:43. Показов 2360. Ответов 2
Метки (Все метки)

Ответ

Цитата Сообщение от notemac Посмотреть сообщение
Если это функция, то где тело?
Ну там же было написано, что оно не нужно. Раз все действия проводятся в compile-time, то зачем нам нужно тело?
Цитата Сообщение от notemac Посмотреть сообщение
Как функция может возвращать ссылку на массив char'ов, если слева от имени стоит
В С\С++ объявление можно представить так:
prefix name suffix.
, где префикс и суффикс — какие-то строки, вместе образующие правильное выражение. Соответственно, производные типы получаются добавлением операторов (*, &, const, volatile, (), []) к префиксу/суффиксу. Суффикс является опциональным, префикс - нет.

Массивы в С++ определяются так:
C++
1
type name [ constant_expression ]
Массив возвращать по значению нельзя, из-за наследия С. Но можно вернуть ссылку на массив. Ссылка на массив определяется так:
C++
1
type (&name) [ constant_expression ]
Т.е. грамматика С++ не позволяет размерность массива перенести в левую часть. Это же касается декларации типа функции
C++
1
typedef return_type ftypename (arguments);
, или переменной-указателя на функцию.
C++
1
return_type (*fptr)(arguments);
Видишь, имя - посередине. Аргументы нельзя перенести в левую часть при такой записи.

Теперь вернемся к функции, возвращающей ссылку на массив. Т.к. мы не можем перенести размерность в левую часть, нам придется его написать в правой. Поэтому декларация функции, возвращающей ссылку на массив, выглядит так:
type (& func_name( arguments ) )[ constant_expression ];
Жирным выделил то, что относится к возвращаемому значению функции.

Вот еще полезная ссылка по теме.

Вернуться к обсуждению:
Шаблоны, макросы, размер массива C++
4
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.05.2015, 19:43
Готовые ответы и решения:

Шаблоны и Макросы С++
Задание связанное с макросами и шаблонами, ни как не могу решить проблему. Задание: Макрос -...

Шаблоны, наследование и размер типа
Суть вопроса в том, что имея два шаблона класса, унаследованных от общего предка, и инстанциируя...

Ввести размер массива с клавиатуры и передать этот размер в конструктор
Я создал массив объектов. И я хочу ввести размер этого массива с клавиатуры, и передать этот размер...

При загрузке программы макросы не отключаются - но макросы не срабатывают.
уровень безопасности - средний, при загрузке программы макросы не отключаются - но макросы не...

2
06.05.2015, 19:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.05.2015, 19:43
Помогаю со студенческими работами здесь

Ошибка CS1586 При создании массива следует указать размер массива или инициализатор массива
Не понимаю в чём ошибка. Ошибка CS1586 При создании массива следует указать размер массива или...

Написать макросы для вывода массива и нахождения суммы его элементов
Требуется написать используя директиву #define два макроса, на вход подаётся только имя массива и...

Хранить шаблоны документов в базе и выводить данные в эти шаблоны
Доброго времени суток. Интересует вопрос: мне необходимо формировать вордовские документы по...

Чем отличаются шаблоны HTML и шаблоны WordPress
В чём различие между шаблонами HTML и WordPress. Кроме того, что создаются они разными способами....

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru