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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
VLK
193 / 162 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
#1

Запись CLASS1 *test = new CLASS2 - C++

02.08.2013, 21:28. Просмотров 361. Ответов 5
Метки нет (Все метки)

Наследование класс1 *test = new класс2
В продолжении этой темы, т.к. не могу в итоге получить ответ.

C++
1
2
3
class DerivedClass : public BaseClass
...
BaseClass *test = new DerivedClass

test - что это будет, объект какого класса BaseClass или DerivedClass ?

или это будет указатель типа BaseClass, а объект на который указывает этот указатель будет иметь тип DerivedClass?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2013, 21:28     Запись CLASS1 *test = new CLASS2
Посмотрите здесь:

Сравнивание CLASS1* с CLASS2 - C++
есть вектор указателей CLASS1 и мне нужно функцией std::find найти нужный указатель делаю так: find( v.begin(), v.end(), CLASS2( 3, 4 )...

Нюансы синтаксиса: что означает запись void Test::TestCheck() ? - C++
Вот пример, и мне не понятно почему мы пишем сначала void перед пространством имени ??? Почему void не пишется перед названием самой...

C:\Projects\test\test.cpp|6|error: ISO C++ forbids declaration of 'operator++' with no type [-fpermissive]| - C++
class TUID { public: char Data; TUID (); operator ++ (); };

Google Test и TDD - C++
1) Гугловский фреймворк тестировать умеет только статические библиоткеи? Разве создать обычный проект нельзя, который он протестирует?...

Наследование класс1 *test = new класс2 - C++
#include <iostream> class BaseClass // Базовый класс { public: BaseClass(): a(0), b(0) { std::cout << "BaseClass constructor.....

Test.exe has triggered a breakpoint ошибка - C++
Ошибка выполнения программы. Вроде ошибка при освобождении free(massZ). #include <iostream> #include <cstdlib> #include...

Чтение структуры из файла. (Google Test) - C++
Есть структура struct ApRegFileHead { char *rHead; unsigned int version; unsigned int rezerv; }; Она записана...

Google test в Visual Studio 2013 - C++
Пытаюсь запустить пример sample1.cc из https://github.com/google/googletest/tree/master/googletest/samples и что-то как-то приуныл - не...

Google Test. Узнать что за исключение в ASSERT_NO_THROW - C++
Здравствуйте! Вот интересует такой вопрос (сабж). Чтобы прямо там в логе, всмысле. А получалось только, если в этот макрос встраивать try...

Error MSB3073: The command "test.bat - C++
Помогите, пожалуйста, исправить вот такие ошибки: C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5):...

Ошибка при сборке проекта - invalid use of non-static data member 'MainWindow::test' - C++
Собственно, сабж. Собираю в QtCreator, но по-моему ошибка не имеет к нему никакого отношения. Возможно я просто не понимаю, как правильно...

После выполнения (завершения) функции test переменная умрет, а что будет с переменной в Result? - C++
class abc { public: int argc; char **argv; char **azColName; }; std::list<abc> Result;


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
02.08.2013, 21:32     Запись CLASS1 *test = new CLASS2 #2
DerivedClass, хотя хз. Парю может быть.
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
02.08.2013, 21:54     Запись CLASS1 *test = new CLASS2 #3
test это указатель на BaseClass, но по адресу на который указывает этот указатель находится объект DerivedClass

Не по теме:

ну какой вы сколько ж можно то?

VLK
193 / 162 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
02.08.2013, 22:01  [ТС]     Запись CLASS1 *test = new CLASS2 #4
Цитата Сообщение от Jupiter Посмотреть сообщение
ну какой вы сколько ж можно то?
Ну а что, в предыдущей теме, раз восемь поднимался вопрос, который касался test, и ни кому не пришло в голову написать эту волшебную фразу:

Цитата Сообщение от Jupiter Посмотреть сообщение
test это указатель на BaseClass, но по адресу на который указывает этот указатель находится объект DerivedClass
после нее в 500 раз яснее все стало.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
03.08.2013, 19:33     Запись CLASS1 *test = new CLASS2 #5
Цитата Сообщение от VLK Посмотреть сообщение
это будет указатель типа BaseClass, а объект на который указывает этот указатель будет иметь тип DerivedClass?
Если в этом вопрос, то всё же видно из записи:
C++
1
BaseClass *test... // указатель какого типа?
C++
1
... new DerivedClass // объект какого типа?
VLK
193 / 162 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
03.08.2013, 20:13  [ТС]     Запись CLASS1 *test = new CLASS2 #6
alsav22,

BaseClass *test... - указатель типа BaseClass
... new DerivedClass - объект типа DerivedClass
Yandex
Объявления
03.08.2013, 20:13     Запись CLASS1 *test = new CLASS2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru