14Srgrimes#include <string.h>
2549Srgrimes
34Srgrimesclass SomeClass_t {
44Srgrimespublic:
54Srgrimes    SomeClass_t () : x (11) {}
64Srgrimesprotected:
74Srgrimes  float x;
84Srgrimes};
94Srgrimes
104Srgrimesclass DynamicOnly_t {
114Srgrimespublic:
124Srgrimes  static DynamicOnly_t* create (const char* name = "UNDEF",
134Srgrimes                                const SomeClass_t& somec = *(new SomeClass_t
144Srgrimes())) {
154Srgrimes    return new DynamicOnly_t (name, somec);
164Srgrimes  }
174Srgrimes  DynamicOnly_t (const char* name, const SomeClass_t& somec) :
184Srgrimes    m_somec (somec) {
194Srgrimes    strncpy (m_Name, name, sizeof (m_Name));
204Srgrimes  }
214Srgrimesprivate:
224Srgrimes  SomeClass_t m_somec;
234Srgrimes  char m_Name[255];
244Srgrimes};
254Srgrimes
264Srgrimesint main (int argc, char* argv[]) {
274Srgrimes  DynamicOnly_t* ptr = DynamicOnly_t::create ();
284Srgrimes  return 0;
294Srgrimes}
304Srgrimes