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

Почему при присваивании адреса массива не ставится знак '&' получения адреса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ В каждом столбце динамической матрицы поменять местами первый отрицательный элемент и последний нулевой http://www.cyberforum.ru/cpp-beginners/thread1589538.html
Написать программу в динамическом двумерном массиве: В каждом столбце двумерного массива поменять местами первый отрицательный элемент и последний нулевой.
C++ Перемножить двумерные массивы Написать программу в двумерном динамическом массиве: Даны два двумерных массива. Перемножить их как матрицы. Результат записать в третий массив. http://www.cyberforum.ru/cpp-beginners/thread1589535.html
C++ Найти наибольшее количество идущих подряд букв в тексте
Добрый вечер помогите пожалуйста Дан текст найти наибольшее количество идущих подряд букв
ООП: указатель на объект C++
Всем привет. Подскажите пожалуйста как сделать указатель (набор дочерних тематических блоков (указатели на объекты Topic)).Читал про unique_ptr но через него у меня не получается. Само задание: Объявите и реализуйте класс Topic, моделирующий тематический блок лекции: в объекте Topic необходимо хранить следующие данные: название блока (строка); количество слайдов (целое число); набор...
C++ Найти индекс максимального элемента массива http://www.cyberforum.ru/cpp-beginners/thread1589516.html
Добрый вечер помогите пожалуйста в одномерном массиве состоящем из n целых элементов вычислить номер максимального элемента массива
C++ Вычислить площадь трапеции c использованием динамических массивов Вычислить площадь трапеции. Написать программу с использованием динамических массивов, вводя размер массива с клавиатуры. подробнее

Показать сообщение отдельно
Tulosba
:)
Эксперт С++
4382 / 3225 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
25.11.2015, 08:00     Почему при присваивании адреса массива не ставится знак '&' получения адреса
Цитата Сообщение от zer0mail Посмотреть сообщение
Точка останова на присвоении. так что в p еще ничего не записано.
Картинка использовалась для демонстрации типа, а не значения.
Цитата Сообщение от zer0mail Посмотреть сообщение
Небольшой пример:
Если fa и fp имели бы одинаковые имена, сразу получил бы ошибку компиляции, из-за идентичности сигнатур. И дальнейшие изыскания с sizeof стали бы очевидны.

Хочется передавать именно массив и получать его размер через sizeof? Придется прибегнуть к ссылкам и шаблонам:
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
template <class T, int N>
void f( T (&a)[N] ) {
    std::cout << sizeof(a) << std::endl;
}
 
int main() {
    int a[10];
    f(a);
}
 
Текущее время: 11:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru