Giter VIP home page Giter VIP logo

puremvc-cpp-multicore-framework's Issues

pureMVC-cpp-multicore can not build in Cygwin

my solution is:

first solution: change PureMVC.cpp

from:

if defined(APPLE)

define PTHREAD_MUTEX_RECURSIVE_NP PTHREAD_MUTEX_RECURSIVE

endif

to:

if defined(APPLE) || defined(CYGWIN)

define PTHREAD_MUTEX_RECURSIVE_NP PTHREAD_MUTEX_RECURSIVE

endif

second solution: change PureMVC.cpp, int Mutex::Mutex(void)

from:
::pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP);

to:

if defined(PTHREAD_MUTEX_RECURSIVE_NP)

::pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP);

else

::pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);

endif

I don't know which is better.

intialize methods are not called from base class contructor (Facade, MacroCommand..)

In c++ virtual methods defined by the base class called from its constructor won't be correctly resolved to overridden methods defined in the derived class like in Java.

Eg:

class StartupCommand : public Patterns::MacroCommand, virtual public Interfaces::ICommand
{
public:
    // Override
    virtual void initializeMacroCommand() override;
};

void StartupCommand::initializeMacroCommand()
{
    addSubCommand(new PrepViewCommand());
    addSubCommand(new PrepModelCommand());
}

In this case, overridden initializeMacroCommand() will not be called.
This in-constructor behavior might need to be changed to normal methods
that get called on registration or a more proper time.

pureMVC-cpp-multicore can not build without enable c++0x flag

command:
./configure
make

log:
~/puremvc-cpp-multicore-framework-master$ make
/home/Administrator/puremvc-cpp-multicore-framework-master/bk-deps g++ -c -o PureMVC_lib_PureMVC.o -DNDEBUG -DNDEBUG -Iinclude -O2 ./src/PureMVC/PureMVC.cpp
In file included from include/PureMVC/Interfaces/IController.hpp:22:0,
from include/PureMVC/PureMVC.hpp:222,
from ./src/PureMVC/Common.hpp:49,
from ./src/PureMVC/PureMVC.cpp:9:
include/PureMVC/Interfaces/IAggregate.hpp:36:26: error: ‘unique_ptr’ in namespace ‘std’ does not name a template type
typedef std::unique_ptr<IIterator<_Type> > Iterator;

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.