163 / 163 / 68
Регистрация: 23.02.2011
Сообщений: 392
|
||||||
1 | ||||||
Как называется такой объект?13.07.2012, 01:10. Показов 1149. Ответов 18
Метки нет (Все метки)
1
|
13.07.2012, 01:10 | |
Ответы с готовыми решениями:
18
Как преобразовать ссылку на объект в указатель на этот объект? Как называется функция Как называется принцип? Как это называется? |
Заблокирован
|
|
13.07.2012, 01:12 | 2 |
переменным с именами rectangle_area и circle_area типа double присваиваются значения возвращаемые методами класса :
в стр 18 методом double area(double h, double w) в стр 19 методом double area(double r) (оба метода класса перегружены, т.к. имеют одно и тоже название)
1
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
13.07.2012, 01:12 | 3 |
1
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
||||||
13.07.2012, 01:17 | 5 | |||||
тут неправильно код написан, думаю подразумевалось так
1
|
163 / 163 / 68
Регистрация: 23.02.2011
Сообщений: 392
|
|
13.07.2012, 01:19 [ТС] | 6 |
-=ЮрА=-, спасибо, но с классами я немного знаком, и понимаю, что эти методы возвращают .
А насколько широко используются временные объекты в C++?
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
13.07.2012, 01:23 | 7 |
Не очень часто, но есть куда они очень удачно вписываются
как правило либо для конструирования параметра функции (как http://www.cplusplus.com/refer... onal/plus/), либо для RAII
1
|
|
13.07.2012, 01:23
#8
|
Не по теме: alex_x_x, как в первом посте катит http://codepad.org/PG9kDlHO
0
|
163 / 163 / 68
Регистрация: 23.02.2011
Сообщений: 392
|
|
13.07.2012, 01:24 [ТС] | 9 |
alex_x_x, Неправильно, или вызов этих методов варьируется? Лично у меня работают оба варианта. В вашем случае временный объект также создаётся, или методы вызываются сами по себе?
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
13.07.2012, 01:24 | 10 |
-=ЮрА=-, так я не спорю, просто смысл создавать объект для вызова статического метода?
1
|
Заблокирован
|
|
13.07.2012, 01:28 | 11 |
ну тогда думаю лучше сказать, что в случае кода в первом посте мы создаём два временных экземпляра класса т.к. присутсвует geometry(), во втором (твоём) случае напрямую используем методы класса через раскрытие области видимости (читай функции как в нэймспэйсе geometry записали).
1
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
13.07.2012, 01:35 | 12 |
-=ЮрА=-, дада, именно в этом смысле
0
|
Заблокирован
|
|||||||||||
13.07.2012, 01:59 | 14 | ||||||||||
IGPIGP, при таком построении класса
0
|
Заблокирован
|
||||||
13.07.2012, 02:00 | 15 | |||||
Добавлено через 17 минут
Чтобы не было сомнений в постах 11 и 14
2
|
Комп_Оратор)
|
|
13.07.2012, 02:13 | 16 |
-=ЮрА=-, я не про вызов статического метода через класс (без создания экземпляра). Я имел ввиду, что создание временных объектов встроено в язык и делается без нашего участия довольно часто. При передаче по значению, при возврате, при инициализации:
A b = 3; То есть, если и самому нужно, то не грех ведь, создать временный, безымянный (анонимный) объект?
0
|
Заблокирован
|
|
13.07.2012, 02:33 | 17 |
- согласен
IGPIGP, я расценил твой пост в контексте данной темы, так что возможно мы говорили о разных вещахНа счёт этого иногда создание класса может потребовать кучи дополнительных условий и вызовов методов аля AfxWinInit и т.д. (т.е чтобы только создать временный объект нужно выполнить небольшой шаманский ритуал, без которого вызов метода через временный объект вызовет крах алгоритма), в то время как метод в принципе может быть доступен через раскрытие области видимости. В общем для простых классов как у edward_jonson, можно не заморачиваться и использзовать оба метода, в то время как для классов скажем так с "наворотами" предпочтительней раскрывать видимость(конечно если "сам клас позволяет" так глубоко в него влазить без цветов, коробка конфет и шампанского) Добавлено через 9 минут Попробую пояснить примером: Скажем есть класс CSelectFile с использованием внутри него CFileDialog и в нём есть скажем public метод splitpath (разбивает имя выбранного файла на Том:\\цепь каталогов\\имя файла.рсширение. Так вот без AfxWinInit CSelectFile().splitpath опрокинет нашу программу, а вот CSelectFile::splitpath разредит путь к файл на нужные нам куски. Пример может не совсем удачен, но что либо кодить будет долго, а по быстрому думаю для понимание сгодится
1
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
13.07.2012, 02:33 | 18 |
0
|
Комп_Оратор)
|
|
13.07.2012, 03:22 | 19 |
Если позволяет то конечно. Тем более если метод статический. Это легче, а иногда наверное и нельзя по другому... Особенно, если объект без инициализации не создастся и при попытке доступа - ошибка выполнения.
Я про то, что если нестатический метод, а класс, даже без _gc, то всё равно ведь, временные объекты должны удаляться быстрее? Конечно, но вместо 3-ки может быть выражение (трёх-этажное, но в смысле приличное) типа int .
0
|
13.07.2012, 03:22 | |
13.07.2012, 03:22 | |
Помогаю со студенческими работами здесь
19
Недопустимый неполный тип , или как передать в функцию указатель на объект класса , или просто объект как называется такой разъем? Как называется такой шифр? Как называется такой код? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |