Форум программистов, компьютерный форум, киберфорум
Наши страницы

Как правильно? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Текст из одного файла перенести в другой текстовый файл http://www.cyberforum.ru/cpp-beginners/thread345830.html
текст из одного файла перенести в другой текстовый файл, кто может напишите листинг программы чтоб выполняло это условие заранее спасибо
C++ Непонятная рекурсия Привет всем! нужна небольшая помощь в разьяснении кода. Дано задание составить прогу: y=3+6+9+..3*N - составить программу через рекурсию. Дали исходный код, он работает. Но хотелось бы понять... http://www.cyberforum.ru/cpp-beginners/thread345827.html
C++ Залипание клавишы мыши при генерации прерывания
Собственно в чем проблема=) Пишу программу для курсовой под Borland C++ 3.11. Как известно под досом для подключения мыши необходимо генерировать 33 прерывание. Все писал под ос ХР. Препод...
C++ Дан одномерный массив
Дан одномерный массив.Определить количество максимальных элементов в массиве.
C++ Быстрая сортировка с выбором случайного элемента http://www.cyberforum.ru/cpp-beginners/thread345796.html
Вот тут быстрая сортировка с выбором случайного элемента: void quicksort(int from, int to) { int i=from,j=to,k,temp; if (from>=to) return; k=from+rand()%(to-from)+1; while (i<=j) { ...
C++ Неполучается создать процесс Привет! Такая проблема возникла. В Visual C++ 2010 неполучается создать процесс. CreateProcess(argv,0,0,0,0,0,0,0,&sui,&pi); Пишет, что Необработанное исключение в "0x77956dd0" в "!funny.exe":... подробнее

Показать сообщение отдельно
AzaKendler
214 / 116 / 9
Регистрация: 30.05.2011
Сообщений: 1,772
27.08.2011, 16:24  [ТС]
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
template <class Z> class test
{
struct A
{
int val;
A(){val=0;}
};
 
A* top;
size_t size;
 
test(size_t s)
{
size = s;
top = new A[size];
}
 
 
Z& operator [] (size_t i)
{
 
return (top+sizeof(A)*i)->val;  
//return top[i].val;
//return (top+sizeof(A*)*i)->val;
}
 
 
~test(){delete  []top;}
 
}


C++
1
2
3
4
5
6
7
8
9
10
int main(void)
{
 
test<int> t(3);
 
t[0]=6;
t[2] =5;
 
return 0;
}
примерно так. вкратце/


ХМ....я был очень удивлен. когда решил проверить еще раз перед тем как отправить. Все удалилось корректно. Расскомменил работающую строку в операторе [].
Он принимал инт хотя везде было сайз_т. Это я проверял всякие варианты и забыл вернуть. могло от этого?

Добавлено через 2 минуты
easybudda, давай еще раз пробежимся по адресной арифметике? какой шаг? на размер указателя?
В двух словах, твое видение. Постараюсь понять.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru