06. oktober 2013 - 06:57
Der er
7 kommentarer og 1 løsning
return type på en abstract klasse
class plugin_bot_factory: public camfrog_plugin_sdk::plugin_bot_factory_t { public: camfrog_plugin_sdk::base_plugin_bot_t* create_plugin_bot(camfrog_plugin_sdk::base_plugin_mng_t* mngr, const char* bot_name, const char* work_dir) { ---> return new bot_manager_item(mngr, bot_name, work_dir); } }; Nogen der kan fortælle mig hvad jeg så skal gøre ? Et objecy of abstract class type bot_manager_item is not allowed
Annonceindlæg fra Novataris
06. oktober 2013 - 11:52
#1
abstract class ser ud til at betyde at din bot_manager_item er har en Pure virtual function og kan derfor ikke instancieres.
06. oktober 2013 - 13:59
#2
Betyder en abstract class ikke at man ikke kan instancier den og at man kun kan inherit den.
06. oktober 2013 - 16:20
#3
og det vil sige jeg skal lave en ny instans og retunere den eller hvad ? kom med et forslag til løstning
06. oktober 2013 - 17:37
#4
Svar du kan ikke instantierer den da den har en pure virtual funktion, du skal instantierer en afledt klasse. Hvid dette ikke giver nogen mening så vis os din version af bot_manager_item.
06. oktober 2013 - 17:52
#5
ja sorry men her er bot_manager_item #pragma once #include "src/plugin_bot.h" class bot_manager_item: public camfrog_plugin_sdk::base_plugin_bot_t { private: bool disable; std::string _message; std::string _message_copy; public: bot_manager_item(camfrog_plugin_sdk::base_plugin_mng_t* mngr, const char* name, const char* work_dir); ~bot_manager_item(); virtual void on_start(); virtual void add_options(camfrog_plugin_sdk::config_file* cfg); virtual void cleanup(); virtual const char* get_conf_file_name(); protected: void on_im_message(pkt_t &f); DECLARE_EVENT_MAP(); void on_bot_info_request(pkt_t& pkt); void on_bot_show_help(pkt_t& pkt); void on_bot_info_response(pkt_t& pkt){} void on_bot_process_command(pkt_t& pkt){} void on_bot_default_event(pkt_t& pkt){} #ifdef WIN32 void on_get_settings(camfrog_plugin_sdk::data_exchanger_t* data); void on_apply_settings(camfrog_plugin_sdk::data_exchanger_t* data); void on_process_settings(camfrog_plugin_sdk::data_exchanger_t* data); #endif void send_to_module(const char *module_id, pkt_t &f); };
06. oktober 2013 - 23:04
#6
class bot_manager_item: public camfrog_plugin_sdk::base_plugin_bot_t så en af de klasser den arver fra må have den pure virtual den klager over.
08. oktober 2013 - 09:52
#7
19. januar 2014 - 07:50
#8
lukket
Kurser inden for grundlæggende programmering