Раннее примечание: используйте std::string
вместо кучи, выделенной char [].
Распределяет ли выделенная память также 250 байтов во втором примере вместе с созданием класса?
Он будет размещен в куче, как в конструкторе MyClass. Это зависит от того, что вы подразумеваете под «вместе с», оно не обязательно будет выделяться вместе.
И будет ли член действителен в течение всего времени жизни объекта MyClass?
Да.
Что касается первого примера, практично ли распределять членов класса по куче?
Да, в некоторых случаях. Иногда вы хотите минимизировать включения из заголовочного файла, а иногда вы будете использовать фабричную функцию для создания элемента. Обычно я просто использую простой элемент без указателя.