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

Сырой указатель на память выделенную через new[] - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удалить наибольший элемент массива http://www.cyberforum.ru/cpp-beginners/thread1719962.html
Помогите удалить наибольший элемент массива. Помогите!!!:help: #include <iostream> #include <cstdlib>// Для rand #include <iomanip>// Для setw #include <ctime> //Для time #include<conio.h> using namespace std; const int m = 5; const int n = 5;
C++ Написать функцию, находящую корни уравнения методом хорд Написать функцию, находящую корни уравнения методом хорд. Аргументы этой функции: указатель на функцию, задающую уравнение; интервал ; точность ε. Найти корни следующих уравнений: (x-1)^2/(x-1)-10 = 0 10(sin)^2(x/10)-5 = 0 x^3-130 = 0 http://www.cyberforum.ru/cpp-beginners/thread1719947.html
C++ Копирования и объединения строк
Напишите по два варианта функций копирования и объединения строк, повторяют известные Вам функции работы со строками. Первый вариант должен использовать индексацию массива, а второй вариант - указатели и арифметические операции с ними.
C++ Работа с основной памятью
Не могу понять как выполнить задание при работе в основной памяти, есть работа с файлами. (а) Прошу помочь. #include <stdio.h> #include <malloc.h> #include <stdlib.h> // структура для задания строки матрицы typedef struct Line {
C++ С++, массив http://www.cyberforum.ru/cpp-beginners/thread1719913.html
описать функцию случайной генерации элементов массива. описать функцию для нахождения среднего арифметического элементов массива. описать функцию, которая получит в новом массиве все значения, меньшие, чем среднее арифметическое своих соседей. использовать механизм указателей.
C++ Составить программу на С++.После первого вхождения словосочетания un , вставить till void til(string S) { string s = S; string strA = "till"; for (int i = 0; i < s.size(); i++) { if (s == 'un') s.insert(i , strA); } cout << "String with 'UN+TILL' : " << s << endl; подробнее

Показать сообщение отдельно
tapochka
40 / 40 / 8
Регистрация: 25.04.2014
Сообщений: 498
25.04.2016, 00:20     Сырой указатель на память выделенную через new[]
Цитата Сообщение от rikimaru2013 Посмотреть сообщение
подскажите правильную перегрузку для указателя на память выделенную через new[]
как-то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
template<typename T,
         typename std::enable_if<std::rank<T>::value ==0 >::type>
void safe_delete(T* ptr) {
    delete ptr;
}
 
template<typename T>
void safe_delete(T* ptr) {
    delete[] ptr;
}
 
int main() {
auto afa = new int;
    safe_delete<int>(afa);
    auto affa = new int[5];
    safe_delete<int>(afa);
}
хотя не... там оба раза вторая вызывается

Добавлено через 8 минут
теперь мне интересно: что не так?)

Добавлено через 3 минуты
а... у нас же тип Т то всегда тупо int а не int[]
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru