переменные класса
sdelay get_a
class ClassA{
private:
int a;
public:
ClassA { a=10; };
int get { return a;};
};
void some_function{
ClassA my_a;
my_a.a=10; // это не должно работать.
int b=my_a.get; // - а это должно.
};
если я правильно тебя понял.
private:
int a;
public:
ClassA { a=10; };
int get { return a;};
};
void some_function{
ClassA my_a;
my_a.a=10; // это не должно работать.
int b=my_a.get; // - а это должно.
};
если я правильно тебя понял.
почти правильно:
у меня переменные - указатели на массивы, которые в моей проге используются очень часто и вопрос скорости работы - для меня первоочередной. Если сделать функцию, которая будет из массива вытягивать элементы - это безусловно решение, но при этом будут тратиться лишние такты, нежели если использовать этот массив напрямую. За однократное выполнение проги число обращений к массиву - порядка 10^9. Конечно, можно не морочить себе голову и считать, что в этот массив никто не будет писать. то, что я хочу сделать - это типа защиты от дураков (ну или от самого себя
).
У меня просто книжки по c++ под рукой нет. И кстати я не помню, как изменяется доступ к переменным, если их объявлять в классе после protected ?
у меня переменные - указатели на массивы, которые в моей проге используются очень часто и вопрос скорости работы - для меня первоочередной. Если сделать функцию, которая будет из массива вытягивать элементы - это безусловно решение, но при этом будут тратиться лишние такты, нежели если использовать этот массив напрямую. За однократное выполнение проги число обращений к массиву - порядка 10^9. Конечно, можно не морочить себе голову и считать, что в этот массив никто не будет писать. то, что я хочу сделать - это типа защиты от дураков (ну или от самого себя
).У меня просто книжки по c++ под рукой нет. И кстати я не помню, как изменяется доступ к переменным, если их объявлять в классе после protected ?
> Если сделать функцию, которая будет из массива вытягивать элементы - это безусловно решение, но при этом будут тратиться лишние такты,
> нежели если использовать этот массив напрямую.
Если функция определена в заголовочном файле, то нормальный компилятор должен сгенерировать одинаковый код.
> нежели если использовать этот массив напрямую.
Если функция определена в заголовочном файле, то нормальный компилятор должен сгенерировать одинаковый код.
на что будут тратиться такты? (предложенный тебе вариант подразумевает инлайн-подстановку
)
protected, пока нет наследования, ничего нового не привносит
)protected, пока нет наследования, ничего нового не привносит
ааа, бля, все, я еще раз прочитал, что мне написали.
все, всем большое спасибо.
все, всем большое спасибо.

Забей.
Правильный компилятор должен соптимизировать.
А неправильный должен быть пропатчен соответствующим образом.
---
...Я работаю антинаучным аферистом...
Правильный компилятор должен соптимизировать.
А неправильный должен быть пропатчен соответствующим образом.
---
...Я работаю антинаучным аферистом...
я надеюсь, что компилятор в vs.net нормальный? 

> у меня переменные - указатели на массивы
const type* get_a
const type* get_a
Учитывая ".net" --- нет.
По крайней мере, весьма сомнительно.
---
...Я работаю...
По крайней мере, весьма сомнительно.
---
...Я работаю...
да.
А что ".net" перестала накладывать ограничения на среду?
А как же CRL? Или как он там называется-то?
---
...Я работаю...
А как же CRL? Или как он там называется-то?
---
...Я работаю...
Давай так. Компилятор С++ в VS6 в твоём понимании нормальный?
const_cast уже отменили? 

Судя по сравнению производительности кода, далеко не самый лучший. Хотя возможно, что и встроит эти вызовы.
---
...Я работаю...
---
...Я работаю...
эти - встроит.
>по сравнению производительности кода, далеко не самый лучший.
хм... с чем сравниваем?
>по сравнению производительности кода, далеко не самый лучший.
хм... с чем сравниваем?
>const_cast уже отменили?
const_cast - для уебанов
при желании можно ещё кучей способов доступ к этой памяти получить, и что с того?
const_cast - для уебанов
при желании можно ещё кучей способов доступ к этой памяти получить, и что с того?
Поясню. Вроде бы автор хочет добиться производительности?
---
...Я работаю...
---
...Я работаю...
для уебанов - reinterpret_cast
автор хочет не потерять в производительности из-за добавления указанной "фичи". это ведь несколько другое, правда?
По крайней мере, когда я последний раз смотрел обзор (весной лучший выход был у интелевского.
По-моему, даже заметно лучше, но не уверен.
---
...Я работаю...
По-моему, даже заметно лучше, но не уверен.
---
...Я работаю...
ха. а для амд-ных процев разница есть? в которую сторону?
в целом, плюсовский компилятор в студии плохим назвать очень сложно.
в целом, плюсовский компилятор в студии плохим назвать очень сложно.
для уебанов - reinterpret_cast
я юзал reinterpret_cast, когда ботал com и писал компоненты... УЖАС, я уебан

На этом не проиграет, может проиграть на другом.
Сравнительно с доступными возможностями.
(Я подозреваю, что человек либо не требует лицензионной чистоты, либо может её себе позволить.)
---
...Я работаю...
Сравнительно с доступными возможностями.
(Я подозреваю, что человек либо не требует лицензионной чистоты, либо может её себе позволить.)
---
...Я работаю...
Хинт: есть лучше. ; )
Для АМД не помню. Надо смотреть.
Там ещё и гнусь есть.
---
...Я работаю...
Для АМД не помню. Надо смотреть.
Там ещё и гнусь есть.
---
...Я работаю...
>для уебанов - reinterpret_cast
не соглашусь
reinterpret_cast иногда бывает действительно нужен для некоторых (низкоуровневых) вещей
const_cast свидетельствует о (серьёзных) проблемах дизайна
не соглашусь
reinterpret_cast иногда бывает действительно нужен для некоторых (низкоуровневых) вещей
const_cast свидетельствует о (серьёзных) проблемах дизайна
отлично. можешь читать мой вопрос как "реинтерпрет каст уже отменили?"
P.S. вообще, по твоим постам очень похоже, что о программах, пишущихся несколькими людьми, у тебя представления чисто теоретические
P.S. вообще, по твоим постам очень похоже, что о программах, пишущихся несколькими людьми, у тебя представления чисто теоретические
по всем параметрам? то есть такой, который скомпилирует всё то же, что и МС-кий с не меньшей производительностью?
Хинт: это риторический вопрос.
Хинт: это риторический вопрос.
>отлично. можешь читать мой вопрос как "реинтерпрет каст уже отменили?"
применение в такой ситуации реинтерпрет-каста - уебанство
однако, отсюда никак не следует утверждение "субж - для уебанов"
>P.S. вообще, по твоим постам очень похоже, что о программах, пишущихся несколькими людьми, у тебя представления очень смутные
Гы-гы. Несомненно, такой нереальный отец как ты, способен как-то аргументировать свои слова?
применение в такой ситуации реинтерпрет-каста - уебанство
однако, отсюда никак не следует утверждение "субж - для уебанов"
>P.S. вообще, по твоим постам очень похоже, что о программах, пишущихся несколькими людьми, у тебя представления очень смутные
Гы-гы. Несомненно, такой нереальный отец как ты, способен как-то аргументировать свои слова?
Хинт: там ещё всякая гнусь мешается. ; )
---
...Я работаю...
---
...Я работаю...
вообще - да. конкретно тебе - нет. бисер, свиньи, все дела...
Понятно. В очередной раз расписался в собственной некомпетентности. Впрочем, я другого и не ожидал.
Оставить комментарий
pav7
что нужно написать, чтобы в классе была переменная, в которую можно записывать в функциях класса, но вне его эта переменная была только для чтения?пример: