Posted By: medvidek (Zase za polarnim kruhem) on 'CZprogram' Title: Re: export vector do dll Date: Wed Feb 12 12:38:42 2003 > cau lidi... > mel bych problem. > potrebuju vytvorit dll rozhrani k tride, ktera obsahuje tridu odvozenou od > sablony vector. Nejsem si uplne jisty, na co se ptas, tak rozeberu moznosti. Pokud chces dll rozhrani ke tride (a je uplne jedno, co obsahuje), tak proste vyexportujes public metody nebo pripadne celou tridu. Konkretni syntax si nepamatuju, protoze takove skarede veci nedelam :) Ma to tu nevyhodu, ze vyexportovana jmena zavisi na prekladaci a takove dll nemuzes jednoduse pouzit v programu vytvorenem jinym prekladacem. A ma to 150 dalsich problemu, takze pokud to neni velice specificka zalezitost, tak tudy cesta nevede. Resenim je pouzit "C++ interfaces", tudiz struktury obsahujici jen ciste virtualni metody. Tvoje trida od nich podedi a okolni svet pracuje jen s tim interfacem. Protoze se virtualni metody volaji pomoci ofsetu ve VTM, odpoadnou problemy s jmenama. Je to vlastne zaklad komponentoveho programovani. Pokud Te to zajima, dodam link na skvely clanek, ktery to vsechno vysvetluje. Jinak treba Pivson je taky skvely zdroj ;) > da se rict, ze spis potrebuju vedet, jak vytvorit dll rozhrani ke tride > odvozene od vector. > diky Pokud ji odvozujes od instanciovane sablony vector, tj. napr. class moje: public vector<int> tak se jedna o tridu jako kazdou jinou a plati vse receno vyse. Pokud ji odvozujes od neinstanciovane sablony, tj. teplate <class T> class moje: public vector<T> tak vytvaris sablonu a ta se nijak exportovat neda, tu proste z siris ve zdrojove forme. medvidek -- Don't eat that yellow snow!