powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Где глюк?
8 сообщений из 33, страница 2 из 2
Где глюк?
    #34127728
Sandro_K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Голенков Владимир А у меня вот так

оптимизация...

чтобы было везде одинакого надо делать

B(const T &x);

а не

B(T x);

Согласен.
...
Рейтинг: 0 / 0
Где глюк?
    #34127934
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sandro_Kfunction(A());а что, это верный синтаксис? У меня конструктор вызывается, значит, объект создаётся. Если ты используешь объекты класса как reference-type, ты должен всё делать через указатели, если как value-type, объявляй copy construstor'ы и используй как value-type и без интенсивного вызова copy construstor'ов не обойтись - в этом суть value-type. Либо то, либо другое.
...
Рейтинг: 0 / 0
Где глюк?
    #34128086
Sandro_K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmo Sandro_Kfunction(A());а что, это верный синтаксис?
Да это совершенно верный синтаксис.

Он верный и если функчия объявлена так
void function(A a);
и если так
void function(const A& a)

причем если в функцию объект передается по значению, то компилятор(по крайней мере g++) соптимизирует вызов и не создаст временный объект а сконструирует объект сразу внутри функции.
...
Рейтинг: 0 / 0
Где глюк?
    #34128132
Sandro_K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmo Sandro_Kfunction(A());а что, это верный синтаксис?
Немного прогнал, при передачи по ссылке если внутри функции создается копия переданного объекта, то компилятор тоже соптимизирует вызов и конструктор копирования вызываться не будет.
...
Рейтинг: 0 / 0
Где глюк?
    #34129618
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В разделе 12.2 Temporary objects написано, что такая штука зависит от реализации - компилятор не обязан уменьшать количество временных объектов.
...
Рейтинг: 0 / 0
Где глюк?
    #34129625
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и продолжать интенсивно юзать конструкторы копирования
...
Рейтинг: 0 / 0
Где глюк?
    #34131814
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Временных объъек в данном случае всегда будет только один. И это независит от того, что там напишешь снаружи (если конечно специально объекты не плодить), это зависит от сигнатуры данной функции - она принимает параамет по значению, значит один раз объект скопируется.
...
Рейтинг: 0 / 0
Где глюк?
    #34132576
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivВременных объъек в данном случае всегда будет только один.это на усмотрение компилятора.
...
Рейтинг: 0 / 0
8 сообщений из 33, страница 2 из 2
Форумы / C++ [игнор отключен] [закрыт для гостей] / Где глюк?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]