<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Forum Pasja Informatyki - Najnowsze z tagiem stl</title>
<link>https://forum.pasja-informatyki.pl/tag/stl</link>
<description>Powered by Question2Answer</description>
<item>
<title>STL for_each funkcja</title>
<link>https://forum.pasja-informatyki.pl/515530/stl-for_each-funkcja</link>
<description>

&lt;p&gt;żeby nie przekopać znów połowę Internetu czy jest możliwe użycie funkcji z wieloma parametrami do for_each&amp;nbsp;&lt;/p&gt;



&lt;p&gt;np.&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
//to działa bez zarzutu
class Random_Int_srand {
    int sub,sup;
public:
    Random_Int_srand (int Sub, int Sup):sub(Sub),sup(Sup) {
        srand(time(NULL));
    }
    int operator()(int &amp;amp;it) {
        it=rand()%(sup-sub)+sub;
        return it;
    }
} 

Random_Int_srand Trand_C(a,b);
    std::for_each(begin(V5liczb),end(V5liczb),Trand_C);
    std::copy(begin(V5liczb),end(V5liczb),ostream_iterator&amp;lt;int&amp;gt;(cout,&quot;,\t&quot;));

// ale z funkcją dla for_each już nie wiem jak postąpić 

int f(int a=17, int b=24) {
    static std::random_device seed;
    static std::mt19937 engine(seed());
    std::uniform_int_distribution&amp;lt;int&amp;gt; dist(a,b);
    return dist(engine);
}

  std::for_each(begin(V5liczb),end(V5liczb),????????????????);

&lt;/pre&gt;



&lt;p&gt;Nie chodzi mi o lambdę, bo to wiem tylko &quot;zwykłą&quot; funkcję z wieloma parametrami (int &amp;amp;, int sub, int sup).&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/515530/stl-for_each-funkcja</guid>
<pubDate>Sat, 07 Nov 2020 20:49:39 +0000</pubDate>
</item>
<item>
<title>funkcja for_each z kontenerem vector</title>
<link>https://forum.pasja-informatyki.pl/489093/funkcja-for_each-z-kontenerem-vector</link>
<description>

&lt;p&gt;Cześć,&amp;nbsp;&lt;/p&gt;



&lt;p&gt;mam taką klasę:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
class KlientVector
{

 private:
  
     vector&amp;lt;int&amp;gt; otwarte_pozycje;

 public:
    KlientVector(int tab [],int ile );
    void sh();
    void show(int x){cout&amp;lt;&amp;lt;x&amp;lt;&amp;lt;endl;}



};
&lt;/pre&gt;



&lt;p&gt;Konstruktor i funkcja sh&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
KlientVector::KlientVector(int tab[], int ile)
{
   
    
    copy(pos,pos+ile,insert_iterator&amp;lt;vector&amp;lt;int&amp;gt; &amp;gt; (otwarte_pozycje,otwarte_pozycje.begin()));

}

void KlientVector::sh()
{
    for_each(otwarte_pozycje.begin(),otwarte_pozycje.end(),show);
}&lt;/pre&gt;



&lt;p&gt;Chcę, żeby w funkcji sh, były pokazywane wartości poprzez&amp;nbsp; for_each.&amp;nbsp; Kompilator wyrzuca&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
error: must use '.*' or '-&amp;gt;*' to call pointer-to-member function in '__f (...)', e.g. '(... -&amp;gt;* __f) (...)'|&lt;/pre&gt;



&lt;p&gt;Nie rozumiem w czym mam błąd.&amp;nbsp;&lt;/p&gt;



&lt;p&gt;PS&lt;/p&gt;



&lt;p&gt;Czy istnieje metoda w bibliotece STL, która zwraca miejsce wystąpienia danej wartości, np. 3 czy 4 od początku?&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Pozdrawiam&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/489093/funkcja-for_each-z-kontenerem-vector</guid>
<pubDate>Sun, 17 May 2020 15:48:29 +0000</pubDate>
</item>
<item>
<title>find nie działa w funkcji</title>
<link>https://forum.pasja-informatyki.pl/478235/find-nie-dziala-w-funkcji</link>
<description>

&lt;p&gt;Witam. Mam problem z jednym fragmentem kodu. Otóż posiadam 2 tablice, jedna(tab) posiada 128 przetasowanych random_shuffle liczb tablicy ASCII, druga(code) parę elementów o wartościach 1-128. Przy użyciu find chce znaleźć indeks tablicy pierwszej, który zawiera taką samą wartość co np. indeks zerowy tablicy drugiej.&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
int n=sizeof(tab)/sizeof(tab[0]);
    auto itr = find(tab,tab+n,code[0]);
     cout&amp;lt;&amp;lt;distance(tab,itr);&lt;/pre&gt;



&lt;p&gt;Powyższy kod działa tylko w mainie. Kiedy wklejam go do funkcji:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
void Decodeeee(int *tab, int *code)
{
    int n=sizeof(tab)/sizeof(tab[0]);
    auto itr = find(tab,tab+n,code[0]);
    cout&amp;lt;&amp;lt;distance(tab,itr);
}&lt;/pre&gt;



&lt;p&gt;main:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
Decodeeee(tab,code);&lt;/pre&gt;



&lt;p&gt;cout pokazuje za każdym razem błędną wartość 1. Totalnie nie wiem dlaczego, bardzo proszę o pomoc.&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/478235/find-nie-dziala-w-funkcji</guid>
<pubDate>Wed, 25 Mar 2020 20:04:47 +0000</pubDate>
</item>
<item>
<title>Clion + GCC problem z filesystem</title>
<link>https://forum.pasja-informatyki.pl/460080/clion-gcc-problem-z-filesystem</link>
<description>

&lt;p&gt;Witam, podczas kompilacji wywala mi następujący błąd, spowodowany dołączeniem biblioteki&amp;nbsp;filesystem:&lt;/p&gt;



&lt;pre class=&quot;brush:plain;&quot;&gt;
====================[ Build | Double_Fight | Debug ]============================
C:\Users\szytr\AppData\Local\JetBrains\Toolbox\apps\CLion\ch-0\192.7142.39\bin\cmake\win\bin\cmake.exe --build D:\Projekty\Double-Fight\cmake-build-debug --target Double_Fight -- -j 6
[ 33%] Building CXX object CMakeFiles/Double_Fight.dir/src/App.cpp.obj
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\filesystem:37,
                 from D:\Projekty\Double-Fight\src\App.cpp:5:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\fs_path.h: In member function 'std::filesystem::__cxx11::path&amp;amp; std::filesystem::__cxx11::path::operator/=(const std::filesystem::__cxx11::path&amp;amp;)':
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\fs_path.h:237:47: error: no match for 'operator!=' (operand types are 'std::filesystem::__cxx11::path' and 'std::filesystem::__cxx11::path')
    || (__p.has_root_name() &amp;amp;&amp;amp; __p.root_name() != root_name()))
                               ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\iosfwd:40,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ios:38,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ostream:38,
                 from D:/Projekty/Double-Fight/include/SFML/System/Err.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/System.hpp:34,
                 from D:/Projekty/Double-Fight/include/SFML/Window.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/Graphics.hpp:32,
                 from D:\Projekty\Double-Fight\src\App.h:3,
                 from D:\Projekty\Double-Fight\src\App.cpp:1:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\postypes.h:221:5: note: candidate: 'template&amp;lt;class _StateT&amp;gt; bool std::operator!=(const std::fpos&amp;lt;_StateT&amp;gt;&amp;amp;, const std::fpos&amp;lt;_StateT&amp;gt;&amp;amp;)'
     operator!=(const fpos&amp;lt;_StateT&amp;gt;&amp;amp; __lhs, const fpos&amp;lt;_StateT&amp;gt;&amp;amp; __rhs)
     ^~~~~~~~
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\postypes.h:221:5: note:   template argument deduction/substitution failed:
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\filesystem:37,
                 from D:\Projekty\Double-Fight\src\App.cpp:5:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::fpos&amp;lt;_StateT&amp;gt;'
    || (__p.has_root_name() &amp;amp;&amp;amp; __p.root_name() != root_name()))
                                                            ^
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_algobase.h:64,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\char_traits.h:39,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ios:40,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ostream:38,
                 from D:/Projekty/Double-Fight/include/SFML/System/Err.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/System.hpp:34,
                 from D:/Projekty/Double-Fight/include/SFML/Window.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/Graphics.hpp:32,
                 from D:\Projekty\Double-Fight\src\App.h:3,
                 from D:\Projekty\Double-Fight\src\App.cpp:1:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_pair.h:456:5: note: candidate: 'template&amp;lt;class _T1, class _T2&amp;gt; constexpr bool std::operator!=(const std::pair&amp;lt;_T1, _T2&amp;gt;&amp;amp;, const std::pair&amp;lt;_T1, _T2&amp;gt;&amp;amp;)'
     operator!=(const pair&amp;lt;_T1, _T2&amp;gt;&amp;amp; __x, const pair&amp;lt;_T1, _T2&amp;gt;&amp;amp; __y)
     ^~~~~~~~
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_pair.h:456:5: note:   template argument deduction/substitution failed:
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\filesystem:37,
                 from D:\Projekty\Double-Fight\src\App.cpp:5:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::pair&amp;lt;_T1, _T2&amp;gt;'
    || (__p.has_root_name() &amp;amp;&amp;amp; __p.root_name() != root_name()))
                                                            ^
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_algobase.h:67,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\char_traits.h:39,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ios:40,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ostream:38,
                 from D:/Projekty/Double-Fight/include/SFML/System/Err.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/System.hpp:34,
                 from D:/Projekty/Double-Fight/include/SFML/Window.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/Graphics.hpp:32,
                 from D:\Projekty\Double-Fight\src\App.h:3,
                 from D:\Projekty\Double-Fight\src\App.cpp:1:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_iterator.h:311:5: note: candidate: 'template&amp;lt;class _Iterator&amp;gt; constexpr bool std::operator!=(const std::reverse_iterator&amp;lt;_Iterator&amp;gt;&amp;amp;, const std::reverse_iterator&amp;lt;_Iterator&amp;gt;&amp;amp;)'
     operator!=(const reverse_iterator&amp;lt;_Iterator&amp;gt;&amp;amp; __x,
     ^~~~~~~~
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_iterator.h:311:5: note:   template argument deduction/substitution failed:
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\filesystem:37,
                 from D:\Projekty\Double-Fight\src\App.cpp:5:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::reverse_iterator&amp;lt;_Iterator&amp;gt;'
    || (__p.has_root_name() &amp;amp;&amp;amp; __p.root_name() != root_name()))
                                                            ^
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_algobase.h:67,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\char_traits.h:39,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ios:40,
                 from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ostream:38,
                 from D:/Projekty/Double-Fight/include/SFML/System/Err.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/System.hpp:34,
                 from D:/Projekty/Double-Fight/include/SFML/Window.hpp:32,
                 from D:/Projekty/Double-Fight/include/SFML/Graphics.hpp:32,
                 from D:\Projekty\Double-Fight\src\App.h:3,
                 from D:\Projekty\Double-Fight\src\App.cpp:1:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_iterator.h:349:5: note: candidate: 'template&amp;lt;class _IteratorL, class _IteratorR&amp;gt; constexpr bool std::operator!=(const std::reverse_iterator&amp;lt;_Iterator&amp;gt;&amp;amp;, const std::reverse_iterator&amp;lt;_IteratorR&amp;gt;&amp;amp;)'
     operator!=(const reverse_iterator&amp;lt;_IteratorL&amp;gt;&amp;amp; __x,
     ^~~~~~~~
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_iterator.h:349:5: note:   template argument deduction/substitution failed:
In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\filesystem:37,
                 from D:\Projekty\Double-Fight\src\App.cpp:5:
c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::reverse_iterator&amp;lt;_Iterator&amp;gt;'
    || (__p.has_root_name() &amp;amp;&amp;amp; __p.root_name() != root_name()))
                                                   
&lt;/pre&gt;



&lt;p&gt;(Jest tego jeszcze więcej, ale jest limit długości posta)&lt;/p&gt;



&lt;p&gt;Nie wiem co jest tego powodem. Dodam, że przy nowo stworzonym projekcie i załączeniu wyżej wymienionej biblioteki pojawia się ten sam problem.&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/460080/clion-gcc-problem-z-filesystem</guid>
<pubDate>Mon, 25 Nov 2019 21:13:59 +0000</pubDate>
</item>
<item>
<title>symetryczny operator &lt;&lt; &gt;&gt; unordered_map</title>
<link>https://forum.pasja-informatyki.pl/459682/symetryczny-operator-unordered_map</link>
<description>Ostatnio chodzi mi po głowie pytanie jak przeciążyć operator&amp;gt;&amp;gt; i operator&amp;lt;&amp;lt; tak aby były symetryczne, kolejność wprowadzania == kolejności wyjścia.&lt;br /&gt;
&lt;br /&gt;
np kontener unordered_map &amp;lt;string,int&amp;gt;&lt;br /&gt;
&lt;br /&gt;
lub unordered_map &amp;lt;string,pair&amp;lt;int,string&amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bez tworzenia własnej klasy i tam ustawiania klucza</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/459682/symetryczny-operator-unordered_map</guid>
<pubDate>Sat, 23 Nov 2019 20:20:18 +0000</pubDate>
</item>
<item>
<title>iterator w środku stringa</title>
<link>https://forum.pasja-informatyki.pl/454866/iterator-w-srodku-stringa</link>
<description>

&lt;p&gt;Referencja czy wskaźnik? Bo podobno referencja?(Zawsze mnie to drażniło że nie nie rozumiem typu iteratora &quot;auto&quot; nie zawsze załatwia sprawę). I np chciałbym się dostać do konkretnego znaku w stringu.&lt;/p&gt;



&lt;p&gt;to działa&lt;/p&gt;



&lt;pre class=&quot;brush:plain;&quot;&gt;
 string ala =&quot;kot,pies&quot;;
    string::iterator it =begin(ala)+ala.find(',');&lt;/pre&gt;



&lt;p&gt;ale to już nie&lt;/p&gt;



&lt;pre class=&quot;brush:plain;&quot;&gt;
string::iterator it = &amp;amp;ala[3];&lt;/pre&gt;



&lt;p&gt;ani to&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
string::iterator it =&amp;amp;((void*)ala[3]);&lt;/pre&gt;



&lt;p&gt;ani to&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
string::iterator it =&amp;amp;((void*)&amp;amp;ala[3]);&lt;/pre&gt;



&lt;p&gt;edit:: Właśnie w takich przypadkach można załamać ręce&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
  string s = {&quot;1,2,3&quot;};
   
    string::iterator itb=begin(s);
    string::iterator ite=find(it1b,end(s),',');
    string temp(it1b,it1e);
    cout &amp;lt;&amp;lt;temp;

    vector &amp;lt;int&amp;gt; v = {1,2,3};
    vector &amp;lt;int&amp;gt;::iterator itvb=begin(v);
    vector &amp;lt;int&amp;gt;::iterator itve=find(itvb,end(v),2);
    vector &amp;lt;int&amp;gt; v2(itvb,itve);&lt;/pre&gt;



&lt;p&gt;stringstream 10 min, a stl można i dzień stracić i nic, a większość algorytmów opiera się na iteratorach. Jako kontenery vector, map, itd.. są super. Ale iteratory ?&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/454866/iterator-w-srodku-stringa</guid>
<pubDate>Wed, 23 Oct 2019 03:02:57 +0000</pubDate>
</item>
<item>
<title>Wstawianie napisu do mapy z konsoli</title>
<link>https://forum.pasja-informatyki.pl/453918/wstawianie-napisu-do-mapy-z-konsoli</link>
<description>

&lt;p&gt;Dzień dobry, piszę program udostępniający dwie opcje: rejestrację użytkownika oraz lego logowanie za. Chcę skorzystać z mapy, ale nie wiem jak coś do niej wstawić z konsoli. Nie chcę od razu podawać tych danych, tylko chciałabym aby to użytkownik mógł je podać. Czy jest to w ogóle możliwe?&lt;/p&gt;



&lt;p&gt;Fragment kodu, który na razie mam:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
#include &amp;lt;iostream&amp;gt;
#include &amp;lt;windows.h&amp;gt;
#include &amp;lt;map&amp;gt;

using namespace std;

int main()
{
    cout &amp;lt;&amp;lt; &quot;Witaj w grze!\n&quot;;
    cout &amp;lt;&amp;lt; &quot;1 - Zacznij zabawe\n&quot;;
    cout &amp;lt;&amp;lt; &quot;2 - Stworz konto\n&quot;;

    map &amp;lt;string, string&amp;gt; daneUzytkownika;

    daneUzytkownika [&quot;nazwaUzytkownika&quot;] = &quot; &quot;;
    daneUzytkownika [&quot;haslo&quot;] = &quot; &quot;;

    int wybor;
    cin &amp;gt;&amp;gt; wybor;

    switch (wybor)
    {
        case 1: cout &amp;lt;&amp;lt; &quot;Ladowanie gry...&quot;;
        Sleep (1000);
    case 2:
        {
            cout &amp;lt;&amp;lt; &quot;Podaj swoj nazwe uzytkownika i haslo: &quot; &amp;lt;&amp;lt; endl;
            
            
        }
    }
    return 0;
}
&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/453918/wstawianie-napisu-do-mapy-z-konsoli</guid>
<pubDate>Wed, 16 Oct 2019 07:16:14 +0000</pubDate>
</item>
<item>
<title>for (auto &amp;x:vec) nie dla STL?</title>
<link>https://forum.pasja-informatyki.pl/448469/for-auto-%26x-vec-nie-dla-stl</link>
<description>

&lt;p&gt;A mam taką małą dygresję. Niestety ciągle nie mogę puść do przodu w programowaniu, bo podstawy mnie zaskakują.&lt;/p&gt;



&lt;p&gt;1) szukałem rozwiązania jak w cout&amp;lt;&amp;lt;____1____;&lt;/p&gt;



&lt;p&gt;2) a rozczarowało mnie&amp;nbsp; cout&amp;lt;&amp;lt;____2____;&lt;/p&gt;



&lt;p&gt;Tzn wiem jak to obejść, mniej więcej wiem dlaczego. Fakt wszędzie piszą żeby stosować iteratory. Ale zastanawiam się ile jeszcze&amp;nbsp; takich niespodzianek ma c++.&lt;/p&gt;



&lt;p&gt;Taki mały kodzik wczytanie danych do vectora przez konstruktor&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
#include &amp;lt;iostream&amp;gt;
#include &amp;lt;vector&amp;gt;

class cinsomething
{

    int x;
    int count;
public:
    cinsomething ()
    {
        std::cin&amp;gt;&amp;gt;x;
        count=startcount++;
        std::cout&amp;lt;&amp;lt;&quot;construstorNb = &quot;&amp;lt;&amp;lt;construstorNb++&amp;lt;&amp;lt;&quot;___________\n&quot;;
    }
    cinsomething(const int resetcount)
    {
        startcount=resetcount;
    }

    ~cinsomething ()
    {
        std::cout&amp;lt;&amp;lt;&quot;construstorNb = &quot;&amp;lt;&amp;lt;deconstrustorNb++&amp;lt;&amp;lt;&quot;___________\n&quot;;
    }

    static int construstorNb;
    static int deconstrustorNb;
    static int startcount;

    friend std::ostream &amp;amp; operator &amp;lt;&amp;lt; (std::ostream &amp;amp;, const cinsomething &amp;amp;);

};

std::ostream &amp;amp; operator &amp;lt;&amp;lt; (std::ostream &amp;amp;os, const cinsomething &amp;amp; cin)
{
    return os&amp;lt;&amp;lt;&quot;x=&quot;&amp;lt;&amp;lt;cin.x&amp;lt;&amp;lt;&quot;\tcount=&quot;&amp;lt;&amp;lt;cin.count&amp;lt;&amp;lt;std::endl;
}

int cinsomething::construstorNb;
int cinsomething::deconstrustorNb;
int cinsomething::startcount;



using namespace std;

int main()
{
    {
        vector&amp;lt;cinsomething&amp;gt; vec(3);

        cout&amp;lt;&amp;lt;&quot;_______1__________\n&quot;;

        for(auto &amp;amp;x:vec); //
        for(const auto &amp;amp;x:vec)
            cout&amp;lt;&amp;lt;x;

        cout&amp;lt;&amp;lt;&quot;_______2__________\n&quot;;
        cinsomething(0);
        vec.resize(5);
        for(auto &amp;amp;x:vec)
            x=cinsomething();
        for(const auto &amp;amp;x:vec)
            cout&amp;lt;&amp;lt;x;


    }
cout&amp;lt;&amp;lt;&quot;\n&quot;&amp;lt;&amp;lt;cinsomething::construstorNb-cinsomething::deconstrustorNb;
cout&amp;lt;&amp;lt;&quot;\n&quot;&amp;lt;&amp;lt;cinsomething::construstorNb;
cout&amp;lt;&amp;lt;&quot;\n&quot;&amp;lt;&amp;lt;cinsomething::deconstrustorNb;


    return 0;
}
&lt;/pre&gt;



&lt;p&gt;wyjście&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
11 12 13
construstorNb = 0___________
construstorNb = 1___________
construstorNb = 2___________
_______1__________
x=11    count=0
x=12    count=1
x=13    count=2
_______2__________
construstorNb = 0___________
21 22 23 24 25
construstorNb = 3___________
construstorNb = 4___________
construstorNb = 1___________
construstorNb = 2___________
construstorNb = 3___________
construstorNb = 5___________
construstorNb = 4___________
construstorNb = 6___________
construstorNb = 5___________
construstorNb = 7___________
construstorNb = 6___________
26 27
construstorNb = 8___________
construstorNb = 7___________
construstorNb = 9___________
construstorNb = 8___________
x=23    count=2
x=24    count=3
x=25    count=4
x=26    count=5
x=27    count=6
construstorNb = 9___________
construstorNb = 10___________
construstorNb = 11___________
construstorNb = 12___________
construstorNb = 13___________

-4
10
14&lt;/pre&gt;



&lt;p&gt;edit:: taka mała korekta po co mi drugi konstruktor.&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/448469/for-auto-%26x-vec-nie-dla-stl</guid>
<pubDate>Fri, 06 Sep 2019 22:52:47 +0000</pubDate>
</item>
<item>
<title>stl funkcja iteratory</title>
<link>https://forum.pasja-informatyki.pl/444430/stl-funkcja-iteratory</link>
<description>

&lt;p&gt;cout&amp;lt;&amp;lt; mi wyświetla bledną wartość, w tej funkcji poniżej:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
void aaa(p_im_iter p_row) {

/// **************************************
 

    m_iter col_b((p_row.first-&amp;gt;second).begin());
    m_iter col_e((p_row.first-&amp;gt;second).end());

    for(col_b;col_b!=col_e;col_b++){
        int a=col_b-&amp;gt;first;
        std::cout&amp;lt;&amp;lt;a;
    }

///**************************************

}&lt;/pre&gt;



&lt;p&gt;A tu cały kod:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
#include &amp;lt;iostream&amp;gt;

#include &amp;lt;stack&amp;gt;
#include &amp;lt;map&amp;gt;
#include &amp;lt;algorithm&amp;gt;

using s = std::stack&amp;lt;int&amp;gt;;
using m = std::map&amp;lt;int,int&amp;gt;;
using im= std::map&amp;lt;int,m&amp;gt;;

//std::map&amp;lt;int,std::map&amp;lt;int,int&amp;gt;&amp;gt;::iterator
using m_iter=m::iterator;
using im_iter=im::iterator;


using p_m_iter=std::pair&amp;lt;m_iter,m_iter&amp;gt;;
using p_im_iter = std::pair&amp;lt;im_iter,im_iter&amp;gt;;

void aaa(p_im_iter p_row) {

/// **************************************


    m_iter col_b((p_row.first-&amp;gt;second).begin());
    m_iter col_e((p_row.first-&amp;gt;second).end());

    for(col_b; col_b!=col_e; col_b++) {
        int a=col_b-&amp;gt;first;
        std::cout&amp;lt;&amp;lt;a;
    }

///**************************************

}

using namespace std;

int main() {
    map&amp;lt;int,map&amp;lt;int,int&amp;gt;&amp;gt; row;

    im_iter row_b(row.begin());
    im_iter row_e(row.end());

    p_im_iter para(row_b,row_e);

    int a=0,b=0;

    while (cin.peek()!=10) {
        map&amp;lt;int,int&amp;gt; col;
        a=0,b=0;
        while (cin.peek()!=10) {
            cin&amp;gt;&amp;gt;a&amp;gt;&amp;gt;b;
            col[b]=a;
        }
        row[a]=col;
        cin.get();
    }

    for(auto x:row) {

        for (auto y:x.second)
            cout&amp;lt;&amp;lt;'('&amp;lt;&amp;lt;y.first&amp;lt;&amp;lt;','&amp;lt;&amp;lt;y.second&amp;lt;&amp;lt;')';
        cout&amp;lt;&amp;lt;endl;
    }
    aaa (para);

    cout &amp;lt;&amp;lt; &quot;Hello world!&quot; &amp;lt;&amp;lt; endl;
    return 0;
}
&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/444430/stl-funkcja-iteratory</guid>
<pubDate>Mon, 12 Aug 2019 00:36:00 +0000</pubDate>
</item>
<item>
<title>pojemność pojemników STL multiset, list, ....</title>
<link>https://forum.pasja-informatyki.pl/440308/pojemnosc-pojemnikow-stl-multiset-list</link>
<description>Czy tylko u mnie, czy u wszystkich jak kontener ma ponad 4000 elementów , to program kończy się błędem?</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/440308/pojemnosc-pojemnikow-stl-multiset-list</guid>
<pubDate>Mon, 15 Jul 2019 12:56:59 +0000</pubDate>
</item>
<item>
<title>lista STL sortowanie</title>
<link>https://forum.pasja-informatyki.pl/439258/lista-stl-sortowanie</link>
<description>

&lt;p&gt;wektor mi sortuje a listy nie chce po polu struktury&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
  sort(vector_x.begin(),vector_x.end(),compare_x()); // vector STL 
   sort(lista_x.begin(),lista_x.end(),compare_x()); // List STL &lt;/pre&gt;



&lt;p&gt;czy musi być class compare funkcja z iteratorem?&lt;/p&gt;



&lt;p&gt;W czym problem. Jeden z błędów kompilatora :&lt;/p&gt;



&lt;p&gt;\c++\bits\stl_algo.h|1964|error:
&lt;br&gt;
&amp;nbsp;no match for 'operator-'
&lt;br&gt;
(operand types are 'std::_List_iterator&amp;lt;punkt&amp;gt;' and
&lt;br&gt;
'std::_List_iterator&amp;lt;punkt&amp;gt;')|&lt;/p&gt;



&lt;p&gt;czy musi być class compare funkcja z iteratorem?&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/439258/lista-stl-sortowanie</guid>
<pubDate>Mon, 08 Jul 2019 18:24:53 +0000</pubDate>
</item>
<item>
<title>Dlaczego optymalizacja GCC spowalnia STL algorithms?</title>
<link>https://forum.pasja-informatyki.pl/420037/dlaczego-optymalizacja-gcc-spowalnia-stl-algorithms</link>
<description>

&lt;p&gt;Cześć.&lt;/p&gt;



&lt;p&gt;Czytając&amp;nbsp;&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.fluentcpp.com/2019/03/15/performance-benchmark-ranges-vs-stl-algorithms-vs-smart-output-iterators/&quot;&gt;to&lt;/a&gt;&amp;nbsp;można zauważyć, że bez optymalizacja szybkość wykonywania każdej operacji w przypadku STL jest za każdym razem szybsza od SOI czy ranges, jednak gdy w przypadku GCC użyjemy optymalizacji (choćby 1 poziomu, to szybkość diametralnie się zwiększa i wygrywają zewnętrzne biblioteki (choć ranges chyba jest w standardzie, ale dziwnie to wygląda). Dlaczego ta zmiana jest na złe, choć jest to optymalizacja, a autora to nie dziwi (tak, jakby tak właśnie powinno być)?&amp;nbsp;&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/420037/dlaczego-optymalizacja-gcc-spowalnia-stl-algorithms</guid>
<pubDate>Fri, 15 Mar 2019 14:50:53 +0000</pubDate>
</item>
<item>
<title>Projekt na studia, problem z polimorfizmem</title>
<link>https://forum.pasja-informatyki.pl/402328/projekt-na-studia-problem-z-polimorfizmem</link>
<description>

&lt;p&gt;Hej piszę projekt na studia i mam problem z metodą liczącą najbliższą odległość miedzy obiektem a elementami kontenera list i zwracającą najbliższy element listy.&lt;/p&gt;



&lt;p&gt;Tu macie link do pobrania całego projektu:&amp;nbsp;
&lt;br&gt;
&lt;a href=&quot;https://drive.google.com/open?id=1rqy7531-4EnP0-tKErI1gVR-yJFQD1on&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;&quot;&gt;https://drive.google.com/open?id=1rqy7531-4EnP0-tKErI1gVR-yJFQD1on&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;Błędy wyrzuca metoda:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
Pasterz Owca::FindNearestPasterz&lt;/pre&gt;



&lt;p&gt;o treściach:&lt;/p&gt;



&lt;pre class=&quot;brush:plain;&quot;&gt;
std::unique_ptr&amp;lt;Owca,std::default_delete&amp;lt;_Ty&amp;gt;&amp;gt;::unique_ptr(const std::unique_ptr&amp;lt;_Ty,std::default_delete&amp;lt;_Ty&amp;gt;&amp;gt; &amp;amp;)': cannot convert argument 1 from 'Object *' to 'std::nullptr_t&amp;nbsp; //xmemory0&amp;nbsp;&amp;nbsp; &amp;nbsp;881&amp;nbsp;

missing type specifier - int assumed. Note: C++ does not support default-int&amp;nbsp; //owca.h&amp;nbsp;&amp;nbsp; &amp;nbsp;16&amp;nbsp;&amp;nbsp; &amp;nbsp;

syntax error: missing ',' before '*'&amp;nbsp; //owca.h&amp;nbsp;&amp;nbsp; &amp;nbsp;16&lt;/pre&gt;



&lt;p&gt;Chodzi w niej o to aby owca znalazła najbliższego pasterza z kontenera. Odległość liczona jest na bazie współrzędnych, które mogą być wielowymiarowe, dlatego przechowywane są w tablicy dynamicznej.&lt;/p&gt;



&lt;p&gt;Klasy Pasterz i Owca dziedziczą po klasie abstrakcyjnej Object.&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/402328/projekt-na-studia-problem-z-polimorfizmem</guid>
<pubDate>Wed, 26 Dec 2018 11:27:41 +0000</pubDate>
</item>
<item>
<title>cout - jak powstaje?</title>
<link>https://forum.pasja-informatyki.pl/399763/cout-jak-powstaje</link>
<description>

&lt;p&gt;Cześć,&lt;/p&gt;



&lt;p&gt;Chcę Was prosić o pomoc w zrozumieniu jak powstaje obiekt &lt;em&gt;cout&lt;/em&gt;.&lt;/p&gt;



&lt;p&gt;Wiem jedynie, że &lt;em&gt;cout &lt;/em&gt;jest obiektem klasy &lt;em&gt;std::ostream&lt;/em&gt; i powstaje w konstruktorze klasy &lt;em&gt;std::ios_base::Init&lt;/em&gt; (tzn. w konstruktorze pewnej klasy wewnętrznej klasy &lt;em&gt;std::ios_base&lt;/em&gt;) - natomiast obiekt klasy &lt;em&gt;std::ios_base::Init&lt;/em&gt; powstaje w pliku nagłówkowym &lt;em&gt;&amp;lt;iostream&amp;gt;&lt;/em&gt;.&lt;/p&gt;



&lt;p&gt;Ale klasa &lt;em&gt;std::ios_base&lt;/em&gt; jest klasą bazową klasy &lt;em&gt;std::ostream&lt;/em&gt; - więc konstruktor wewnętrznej klasy w klasie bazowej nie zna klasy pochodnej &lt;em&gt;std::ostream&lt;/em&gt;. Zatem w jaki sposób może tworzyć jej obiekt?&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/399763/cout-jak-powstaje</guid>
<pubDate>Tue, 11 Dec 2018 20:31:15 +0000</pubDate>
</item>
<item>
<title>C++ sort STL</title>
<link>https://forum.pasja-informatyki.pl/375144/c-sort-stl</link>
<description>

&lt;p&gt;Czesc&lt;/p&gt;



&lt;p&gt;Rozwiazuje sobie zadanie z OIG&lt;/p&gt;



&lt;p&gt;a konkretnie takie jedno&lt;/p&gt;



&lt;p&gt;&lt;a href=&quot;https://szkopul.edu.pl/problemset/problem/ERz8Uez5UFnNbPH2Jn965eZ/site/?key=statement&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://szkopul.edu.pl/problemset/problem/ERz8Uez5UFnNbPH2Jn965eZ/site/?key=statement&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;Znalazłem sobie w necie takie rozwiazanie&lt;/p&gt;



&lt;pre class=&quot;brush:plain;&quot;&gt;
#include &amp;lt;iostream&amp;gt;
#include &amp;lt;vector&amp;gt;
#include &amp;lt;algorithm&amp;gt;

std::vector&amp;lt;std::string&amp;gt; Wektor;
using namespace std;

bool Sortowanie(std::string A, std::string B )
{
    
        if( A.length() &amp;gt; B.length() ) return true;
        else if( A.length() == B.length() )
        {
                if( A &amp;lt; B ) return false;
                else return true;
        }
        else return false;
}

int main()
{
        std::ios_base::sync_with_stdio(false);

        std::string Tekst;
        int T;

        std::cin &amp;gt;&amp;gt; T;

        while(T--)
        {
                std::cin &amp;gt;&amp;gt; Tekst;
                Wektor.push_back(Tekst);
        }
cout&amp;lt;&amp;lt;endl;
        std::sort( Wektor.begin(), Wektor.end(), Sortowanie );

        for( int i = Wektor.size()-1; i &amp;gt;= 0; i-- ) std::cout &amp;lt;&amp;lt; Wektor[i] &amp;lt;&amp;lt; &quot;\n&quot;;

        return 0;
}
&lt;/pre&gt;



&lt;p&gt;tylko nie za bardzo rozumiem dzialanie tej funkcji sort z STL-a ,a dokladnie co robi ta&amp;nbsp; funkcja &quot;Sortowanie&quot;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/375144/c-sort-stl</guid>
<pubDate>Thu, 23 Aug 2018 14:21:39 +0000</pubDate>
</item>
<item>
<title>Doszkolenie się z zakresu C+11/STL</title>
<link>https://forum.pasja-informatyki.pl/368209/doszkolenie-sie-z-zakresu-c-11-stl</link>
<description>Witam wszystkim,&lt;br /&gt;
&lt;br /&gt;
Czy ktoś z użytkowników forum poleca jakiś fajny videokurs dotyczący C++11/ STL?&lt;br /&gt;
&lt;br /&gt;
Szukałem na Udemy oraz Courserze, ale nic ciekawego nie udało mi się znaleźć.&lt;br /&gt;
&lt;br /&gt;
Z góry dziękuję za odpowiedź.</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/368209/doszkolenie-sie-z-zakresu-c-11-stl</guid>
<pubDate>Tue, 24 Jul 2018 07:55:40 +0000</pubDate>
</item>
<item>
<title>STL - list - funkcja find_if</title>
<link>https://forum.pasja-informatyki.pl/240685/stl-list-funkcja-find_if</link>
<description>

&lt;p&gt;Dostaję taki błąd : error: 'std::list&amp;lt;student&amp;gt;::iterator' has no member named 'lista' &amp;nbsp;&lt;/p&gt;



&lt;p&gt;Ktoś wie, o co tu chodzi? Mam wcześniej deklaracje, a wywala taki błąd. W innych metodach, w których również tego używam, nie ma takiego problemu..&amp;nbsp;&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;


list &amp;lt;student&amp;gt; lista;

/////////////////////////////////////////

void insert()
{
     string numer_albumu, imie, nazwisko, rok_studiow, kierunek, specjalnosc;
list&amp;lt;student&amp;gt;::iterator it = find_if(lista.begin(). lista.end(), [](const student&amp;amp; s) { return s.numer_albumu == &quot;123&quot;; });
lista.insert(next(it), {numer_albumu, imie, nazwisko, rok_studiow, kierunek, specjalnosc});

}&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/240685/stl-list-funkcja-find_if</guid>
<pubDate>Sat, 01 Apr 2017 19:24:55 +0000</pubDate>
</item>
<item>
<title>Lista stl - dodawanie za elementem</title>
<link>https://forum.pasja-informatyki.pl/239486/lista-stl-dodawanie-za-elementem</link>
<description>

&lt;p&gt;Witam :)&amp;nbsp;
&lt;br&gt;

&lt;br&gt;
Mam pytanie odnośnie metody insert(). Używam jej na takiej zasadzie, że podaje numer elementu, za którym ma pojawić się mój element. Jednak chciałbym uzyskać taki efekt, że element będzie wstawiany po wskazanym numerze indeksu ( czy innej danej w danym elemencie). Czy jest taka możliwość, żeby przerobić tę funkcję?&amp;nbsp;
&lt;br&gt;

&lt;br&gt;
&amp;nbsp;&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
void insert()
{
     string numer_albumu, imie, nazwisko, rok_studiow, kierunek, specjalnosc;



    list&amp;lt;student&amp;gt;::iterator i=lista.begin(); i!= lista.end(); ++i;
    int pozycja;
    cout&amp;lt;&amp;lt;&quot;Gdzie wstawic element: &quot;;
    cin&amp;gt;&amp;gt;pozycja;
     cout &amp;lt;&amp;lt; &quot;Podaj wszystkie informacje o studencie.&quot; &amp;lt;&amp;lt; endl;
     cout &amp;lt;&amp;lt; &quot;Numer albumu: &quot;;
     cin &amp;gt;&amp;gt; numer_albumu;
     cout &amp;lt;&amp;lt; &quot;Imie studenta: &quot;;
     cin &amp;gt;&amp;gt; imie;
     cout &amp;lt;&amp;lt; &quot;Nazwisko studenta: &quot;;
     cin &amp;gt;&amp;gt; nazwisko;
     cout &amp;lt;&amp;lt; &quot;Rok studiow: &quot;;
     cin &amp;gt;&amp;gt; rok_studiow;
     cout &amp;lt;&amp;lt; &quot;Kierunek studiow: &quot;;
     cin &amp;gt;&amp;gt; kierunek;
     cout &amp;lt;&amp;lt; &quot;Specjalnosc: &quot;;
     cin &amp;gt;&amp;gt; specjalnosc;
    advance(i, pozycja);
    lista.insert(i, {numer_albumu, imie, nazwisko, rok_studiow, kierunek, specjalnosc});

}&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/239486/lista-stl-dodawanie-za-elementem</guid>
<pubDate>Tue, 28 Mar 2017 22:11:17 +0000</pubDate>
</item>
<item>
<title>Lista  - szablon stl</title>
<link>https://forum.pasja-informatyki.pl/239144/lista-szablon-stl</link>
<description>

&lt;p&gt;Witam :) Muszę napisać listę przy użyciu szablonu. Zadanie byłoby proste, gdybym musiał dodawać do listy pojedyncze elementy ( w sensie jeden element = jedna dana). Jednak u mnie jeden element = nr indeksu, imie, nazwisko itd. Da się użyć w taki sposób funkcji np. push_back()? &amp;nbsp;&lt;/p&gt;



&lt;p&gt;W przypadku kiedy sam implementowałem listę stworzyłem po prostu dwie struktury, jedna odpowiadała za samą listę, natomiast druga była po prostu zbiorem danych dla danego elementu. Tutaj jednak nie wiem, w jaki sposób to ugryźć.&amp;nbsp;&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Załączam fragment kodu, który przedstawia ten sposób, że każda informacja na temat jednego studenta jest oddzielnie. Jednak nie jest to rozwiązanie, o które mi chodzi.&amp;nbsp;&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
using namespace std;

list  &amp;lt;string&amp;gt; lista;
int wybor;

void wyswietl()
{
     system(&quot;cls&quot;);
     SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),10);
     cout &amp;lt;&amp;lt; &quot;----- BAZA STUDENTOW ------&quot; &amp;lt;&amp;lt; endl;
     for(list&amp;lt;string&amp;gt;::iterator i=lista.begin(); i!=lista.end();++i)
          cout &amp;lt;&amp;lt;*i&amp;lt;&amp;lt;&quot; &quot;&amp;lt;&amp;lt; endl;
          cout &amp;lt;&amp;lt; endl;
          cout &amp;lt;&amp;lt; endl;


}

void push_front()
{
     string numer_albumu, imie, nazwisko, rok, kierunek, specjalnosc;
     cout &amp;lt;&amp;lt; &quot;Podaj wszystkie informacje o studencie. &amp;lt;&amp;lt; endl;
     cout &amp;lt;&amp;lt; &quot;Numer albumu: &quot;;
     cin &amp;gt;&amp;gt; numer_albumu;
     cout &amp;lt;&amp;lt; &quot;Imie studenta: &quot;;
     cin &amp;gt;&amp;gt; imie;
     cout &amp;lt;&amp;lt; &quot;Nazwisko studenta: &quot;;
     cin &amp;gt;&amp;gt; nazwisko;
     cout &amp;lt;&amp;lt; &quot;Rok studiow: &quot;;
     cin &amp;gt;&amp;gt; rok;
     cout &amp;lt;&amp;lt; &quot;Kierunek studiow: &quot;;
     cin &amp;gt;&amp;gt; kierunek;
     cout &amp;lt;&amp;lt; &quot;Specjalnosc: &quot;;
     cin &amp;gt;&amp;gt; specjalnosc;
     cout &amp;lt;&amp;lt; endl;

     lista.push_front(specjalnosc);
     lista.push_front(kierunek);
     lista.push_front(rok);
     lista.push_front(nazwisko);
     lista.push_front(imie);
     lista.push_front(numer_albumu);
}&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/239144/lista-szablon-stl</guid>
<pubDate>Mon, 27 Mar 2017 20:10:06 +0000</pubDate>
</item>
<item>
<title>Problem z funkcją find_if w c++</title>
<link>https://forum.pasja-informatyki.pl/217611/problem-z-funkcja-find_if-w-c</link>
<description>

&lt;p&gt;Witam, mam problem z find_if. Wszystko wydaje mi się ok, ale niestety w trakcie kompilacji wywala mi błąd &quot;no operatr &quot;=&quot; matches these operands&quot; ...&lt;/p&gt;



&lt;p&gt;kod wygląda następująco&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
#include&amp;lt;iostream&amp;gt;
#include&amp;lt;cstdlib&amp;gt;
#include&amp;lt;ctime&amp;gt;
#include&amp;lt;string&amp;gt;
#include&amp;lt;vector&amp;gt;
#include&amp;lt;cmath&amp;gt;
#include&amp;lt;algorithm&amp;gt;
using namespace std;

struct Dziecko
{
	string nazwisko;
	string imie;
	int x;
	int y;
};
string losuj_imie(string losowe_imie)
{	
	for (int i = 0; i &amp;lt; 6; ++i)
	{
		losowe_imie[i] = rand() % ('Z' - 'A') + 'A';
	}
	return losowe_imie;
}
void wyswietl_liste(vector&amp;lt;Dziecko&amp;gt; Lista)
{
	for (int i = 0; i &amp;lt; 5; ++i)
	{
		cout &amp;lt;&amp;lt; Lista[i].nazwisko &amp;lt;&amp;lt; &quot;  -  &quot;;
		cout &amp;lt;&amp;lt; Lista[i].imie &amp;lt;&amp;lt; &quot;  -  &quot;;
		cout &amp;lt;&amp;lt; Lista[i].x &amp;lt;&amp;lt; &quot;  -  &quot;;
		cout &amp;lt;&amp;lt; Lista[i].y &amp;lt;&amp;lt; endl;
	}
}
float odleglosc(int x, int y)
{
	return sqrt(x*x + y*y);
}
bool czy_dalej(Dziecko &amp;amp;a, Dziecko &amp;amp;b)
{
	float odl1, odl2;
	odl1=odleglosc(a.x, a.y);
	odl2 = odleglosc(b.x, b.y);

	if (odl1 &amp;lt; odl2)
		return true;
	else
		return false;
}

bool ktore_nazwisko_pierwsze_wg_alfabetu(Dziecko &amp;amp;a, Dziecko &amp;amp;b)
{
	if (a.nazwisko&amp;lt;b.nazwisko)
	{
		return true;
	}
	else
	{
		if (a.nazwisko == b.nazwisko)
		{
			if (a.imie &amp;lt; b.imie)
			{
				return true;
			}
			else return false;
		}
		else return false;
	}
		//return false;
}
void sortuj_wg_alfabetu(vector&amp;lt;Dziecko&amp;gt; &amp;amp;lista)
{
	sort(lista.begin(), lista.end(), ktore_nazwisko_pierwsze_wg_alfabetu);

}
//bool predykat_do_find_if(Dziecko a)
//{
//	if (sqrt((a.x)*(a.x) + (a.y)*(a.y)) &amp;lt; 10)
//	{
//		return true;
//	}
//	else return false;
//}
Dziecko dzieci_ktore_sa_blizej_niz_10(vector&amp;lt;Dziecko&amp;gt;&amp;amp;ListaDzieci)
{
	Dziecko itr;
	itr = find_if(ListaDzieci.begin(), ListaDzieci.end(), [](int x){return x &amp;lt; 10; });
	return itr;
}
int main()
{
	srand(time(NULL));
	string imieD=&quot;      &quot;;
	vector&amp;lt;Dziecko&amp;gt; Lista_dzieci;
	Dziecko testowa_zmienna;
	for (int i = 0; i &amp;lt; 5; ++i)
	{
		testowa_zmienna.imie = losuj_imie(imieD);
		testowa_zmienna.nazwisko = losuj_imie(imieD);
		testowa_zmienna.x = rand() % 20;
		testowa_zmienna.y = rand() % 20;

		Lista_dzieci.push_back(testowa_zmienna);
	}
	wyswietl_liste(Lista_dzieci);
	sort(Lista_dzieci.begin(), Lista_dzieci.end(), czy_dalej);
	cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; &quot;Po Posortowaniu wzgledem odleglosci: &quot; &amp;lt;&amp;lt; endl;
	wyswietl_liste(Lista_dzieci);

	//zadanie a
	sortuj_wg_alfabetu(Lista_dzieci);

	cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; &quot;Po Posortowaniu wzgledem nazwiska i imienia: &quot; &amp;lt;&amp;lt; endl;
	wyswietl_liste(Lista_dzieci);

//	//zadanie b
//	vector&amp;lt;Dziecko&amp;gt; dziecko{};
	Dziecko dziecko_ponizej_10;
	dziecko_ponizej_10=dzieci_ktore_sa_blizej_niz_10(Lista_dzieci);
	system(&quot;pause&quot;);

}&lt;/pre&gt;



&lt;p&gt;cały program działa bez problemu, oprócz właśnie funkcji find_if. Ktoś może wie dla czego jest taki błąd? może źle to zwracam?&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/217611/problem-z-funkcja-find_if-w-c</guid>
<pubDate>Wed, 18 Jan 2017 22:19:59 +0000</pubDate>
</item>
<item>
<title>find_if c++, jak skorzystać</title>
<link>https://forum.pasja-informatyki.pl/216268/find_if-c-jak-skorzystac</link>
<description>

&lt;p&gt;Witam, mam problem, ponieważ nie mogę nigdzie znaleźć dobrego przykładu, jak używać funkcji find_if w c++. Za pomocą tej funkcji mam znaleźć osobe/osoby oddalone od pkt. o maksymalnie 10 jednostek... Problem leży tylko w umiejętności korzystania z tej funkcji, której niestety nie posiadam. Mógłby ktoś pomóc?&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
#include&amp;lt;iostream&amp;gt;
#include&amp;lt;cstdlib&amp;gt;
#include&amp;lt;ctime&amp;gt;
#include&amp;lt;string&amp;gt;
#include&amp;lt;vector&amp;gt;
#include&amp;lt;cmath&amp;gt;
#include&amp;lt;algorithm&amp;gt;
using namespace std;

struct Dziecko
{
	string nazwisko;
	string imie;
	int x;
	int y;
};
string losuj_imie(string losowe_imie)
{	
	for (int i = 0; i &amp;lt; 6; ++i)
	{
		losowe_imie[i] = rand() % ('Z' - 'A') + 'A';
	}
	return losowe_imie;
}
void wyswietl_liste(vector&amp;lt;Dziecko&amp;gt; Lista)
{
	for (int i = 0; i &amp;lt; 5; ++i)
	{
		cout &amp;lt;&amp;lt; Lista[i].nazwisko &amp;lt;&amp;lt; &quot;  -  &quot;;
		cout &amp;lt;&amp;lt; Lista[i].imie &amp;lt;&amp;lt; &quot;  -  &quot;;
		cout &amp;lt;&amp;lt; Lista[i].x &amp;lt;&amp;lt; &quot;  -  &quot;;
		cout &amp;lt;&amp;lt; Lista[i].y &amp;lt;&amp;lt; endl;
	}
}
float odleglosc(int x, int y)
{
	return sqrt(x*x + y*y);
}
bool czy_dalej(Dziecko &amp;amp;a, Dziecko &amp;amp;b)
{
	float odl1, odl2;
	odl1=odleglosc(a.x, a.y);
	odl2 = odleglosc(b.x, b.y);

	if (odl1 &amp;lt; odl2)
		return true;
	else
		return false;
}

bool ktore_nazwisko_pierwsze_wg_alfabetu(Dziecko &amp;amp;a, Dziecko &amp;amp;b)
{
	if (a.nazwisko&amp;lt;b.nazwisko)
	{
		return true;
	}
	else
	{
		if (a.nazwisko == b.nazwisko)
		{
			if (a.imie &amp;lt; b.imie)
			{
				return true;
			}
			else return false;
		}
		else return false;
	}
		//return false;
}
void sortuj_wg_alfabetu(vector&amp;lt;Dziecko&amp;gt; &amp;amp;lista)
{
	sort(lista.begin(), lista.end(), ktore_nazwisko_pierwsze_wg_alfabetu);

}
bool predykat_do_find_if(Dziecko a)
{
	if (sqrt((a.x)*(a.x) + (a.y)*(a.y)) &amp;lt; 10)
	{
		return true;
	}
	else return false;
}
void dzieci_ktore_sa_blizej_niz_10(vector&amp;lt;Dziecko&amp;gt;&amp;amp;ListaDzieci)
{
	vector&amp;lt;Dziecko&amp;gt;::iterator ThisIt = {};
	ThisIt=find_if(ListaDzieci.begin(), ListaDzieci.end(), predykat_do_find_if);
	cout&amp;lt;&amp;lt; *ThisIt;
}
int main()
{
	srand(time(NULL));
	string imieD=&quot;      &quot;;
	vector&amp;lt;Dziecko&amp;gt; Lista_dzieci;
	Dziecko testowa_zmienna;
	for (int i = 0; i &amp;lt; 5; ++i)
	{
		testowa_zmienna.imie = losuj_imie(imieD);
		testowa_zmienna.nazwisko = losuj_imie(imieD);
		testowa_zmienna.x = rand() % 20;
		testowa_zmienna.y = rand() % 20;

		Lista_dzieci.push_back(testowa_zmienna);
	}
	wyswietl_liste(Lista_dzieci);
	sort(Lista_dzieci.begin(), Lista_dzieci.end(), czy_dalej);
	cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; &quot;Po Posortowaniu wzgledem odleglosci: &quot; &amp;lt;&amp;lt; endl;
	wyswietl_liste(Lista_dzieci);

	//zadanie a
	sortuj_wg_alfabetu(Lista_dzieci);

	cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; &quot;Po Posortowaniu wzgledem nazwiska i imienia: &quot; &amp;lt;&amp;lt; endl;
	wyswietl_liste(Lista_dzieci);

	//zadanie b
	vector&amp;lt;Dziecko&amp;gt; dziecko{};
	dziecko.push_back(dzieci_ktore_sa_blizej_niz_10(Lista_dzieci));
	system(&quot;pause&quot;);

}&lt;/pre&gt;



&lt;p&gt;W funkcji main chodzi o moment gdzie zakomentowałem //zadanie b&lt;/p&gt;



&lt;p&gt;Próbowałem na różne sposoby, ale niestety...&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/216268/find_if-c-jak-skorzystac</guid>
<pubDate>Sat, 14 Jan 2017 22:41:21 +0000</pubDate>
</item>
<item>
<title>Jak ustawić seed za pomocą czasu w mechanizmie losowości ?</title>
<link>https://forum.pasja-informatyki.pl/210855/jak-ustawic-seed-za-pomoca-czasu-w-mechanizmie-losowosci</link>
<description>Jak ustawić seed za pomocą czasu w mechanizmie losowości &amp;nbsp;std::default_random_engine dEh; znajdującym się w pliku h?</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/210855/jak-ustawic-seed-za-pomoca-czasu-w-mechanizmie-losowosci</guid>
<pubDate>Fri, 30 Dec 2016 09:49:33 +0000</pubDate>
</item>
<item>
<title>Jak używać mechanizmu losowości w wielu plikach ? STL</title>
<link>https://forum.pasja-informatyki.pl/210034/jak-uzywac-mechanizmu-losowosci-w-wielu-plikach-stl</link>
<description>Jak używać mechanizmu losowości w wielu plikach ? STL</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/210034/jak-uzywac-mechanizmu-losowosci-w-wielu-plikach-stl</guid>
<pubDate>Wed, 28 Dec 2016 11:30:09 +0000</pubDate>
</item>
<item>
<title>Modyfikacja wektora w metodzie klasy</title>
<link>https://forum.pasja-informatyki.pl/209423/modyfikacja-wektora-w-metodzie-klasy</link>
<description>

&lt;p&gt;Witam,&lt;/p&gt;



&lt;p&gt;Od jakiegoś czasu mierze się z problemem modyfikacji zawartości i wielkości wektora w zdefiniowanej przeze mnie klasie, mianowicie:&lt;/p&gt;



&lt;p&gt;Definicja klasy:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
class Route {
std::vector&amp;lt;double&amp;gt; *begin;
std::vector&amp;lt;double&amp;gt; *end;
std::vector&amp;lt;int&amp;gt; *speed;
std::vector&amp;lt;bool&amp;gt; *spot;
public:
Route(TStringList*);
void Modify();
};&lt;/pre&gt;



&lt;p&gt;Metodą Modify() chciałbym usuwać ostatni element wektora begin, end, speed i spot:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
void Route::Modify(){
begin-&amp;gt;pop_back();
end-&amp;gt;pop_back();
speed-&amp;gt;pop_back();
spot-&amp;gt;pop_back();
}&lt;/pre&gt;



&lt;p&gt;Wartości do wektorów wpisuje za pomocą konstruktora, tam metody dla wektorów działają.&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Mógłby ktoś mnie oświecić co robię źle?&amp;nbsp;&lt;img alt=&quot;smiley&quot; src=&quot;http://forum.pasja-informatyki.pl/qa-plugin/ckeditor4/plugins/smiley/images/regular_smile.png&quot; style=&quot;height:23px; width:23px&quot; title=&quot;smiley&quot;&gt;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/209423/modyfikacja-wektora-w-metodzie-klasy</guid>
<pubDate>Mon, 26 Dec 2016 14:25:36 +0000</pubDate>
</item>
<item>
<title>Zagnieżdżone pętle - wyświetlanie danych z kontenerów</title>
<link>https://forum.pasja-informatyki.pl/180725/zagniezdzone-petle-wyswietlanie-danych-z-kontenerow</link>
<description>

&lt;p&gt;Program służy jako baza&amp;nbsp;danych sieci sklepów z zabawkami, o podanym pliku nagłówkowym. Baza danych jest reprezentowana przez&amp;nbsp;kontener (od zera zaimplementowany)&amp;nbsp;składa się z obiektów &lt;em&gt;Chain&lt;/em&gt;, która posiada kontener (wektor/STL) obiektów &lt;em&gt;Shop&lt;/em&gt;, a te posiadają kontener (wektor/STL) obiektów &lt;em&gt;Toy&lt;/em&gt; - jak niżej:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot; style=&quot;text-align:justify&quot; title=&quot;Plik nagłówkowy&quot;&gt;
class Toy {
public:
    string name;
    double price;
    int amount;
    Toy(string name, double price, int amount);
    ~Toy() {}
    friend ostream&amp;amp; operator&amp;lt;&amp;lt;(ostream&amp;amp; out, const Toy&amp;amp; toy);
    friend istream&amp;amp; operator&amp;gt;&amp;gt;(istream&amp;amp; in, Toy&amp;amp; toy);
};

class Shop {
public:
    string address;
    vector&amp;lt;Toy&amp;gt; Toys;
public:
    Shop(string address);
    Shop() {}
    ~Shop() {}
    void addToys();
    void addToysExtended(string name, double price, int amount);
    void deleteToy(string name);
    string getAddress();
    friend ostream&amp;amp; operator&amp;lt;&amp;lt;(ostream&amp;amp; out, const Shop&amp;amp; shop);
    friend istream&amp;amp; operator&amp;gt;&amp;gt;(istream&amp;amp; in, Shop&amp;amp; shop);
};

class Chain {
private:
    string trademark;
    unsigned short amount;
public:
    vector&amp;lt;Shop&amp;gt; Shops;
    Chain(string trademark);
    Chain() {};
    ~Chain() {}
    void addShop();
    void addShopExtended(string address);
    string getTrademark();
    friend ostream&amp;amp; operator&amp;lt;&amp;lt;(ostream&amp;amp; out, const Chain&amp;amp; chain);
    friend istream&amp;amp; operator&amp;gt;&amp;gt;(ostream&amp;amp; in, Chain&amp;amp; chain);
};

void displayMenu();
void pressKey();
void clearScreen();&lt;/pre&gt;



&lt;p style=&quot;text-align:justify&quot;&gt;W funkcji głównej &lt;em&gt;main()&amp;nbsp;&lt;/em&gt;mam za zadanie wyświetlić zabawki sklepu z danej sieci. Stale próbuję napisać własny sposób wyświetlenia kolejnych zabawek, jednak algorytm działa poprawie tylko dla pierwszego przelotu tzn. dla pierwszej sieci i pierwszego sklepu, próba wyświetlenia zawartości dalszych sieci-&amp;gt;sklepów kończy się fiaskiem, bo nic nie wyświetla. Tak wyglądają moje zapiski:&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot; title=&quot;Wyświetlanie zawartości sieci-&amp;gt;sklepu&quot;&gt;
string trademark;
cout &amp;lt;&amp;lt; &quot;Chain's name: &quot;;
cin.ignore(USHRT_MAX, '\n');
getline(cin, trademark);
for (it = database.begin(); it != database.end(); it++) {
	if (trademark == (*it).getTrademark() &amp;amp;&amp;amp; (*it).Shops.size() != 0) {
		string address;
		cout &amp;lt;&amp;lt; &quot;Address: &quot;;
		getline(cin, address);
		for (unsigned short i = 0; i &amp;lt; (*it).Shops.size(); i++) {
			if (address == (*it).Shops[i].address &amp;amp;&amp;amp; (*it).Shops[i].Toys.size() != 0) {
				for (unsigned short j = 0; j &amp;lt; (*it).Shops[i].Toys.size(); j++)
					cout &amp;lt;&amp;lt; (*it).Shops[i].Toys[j] &amp;lt;&amp;lt; endl;
				break;
			}
			if (address == (*it).Shops[i].address &amp;amp;&amp;amp; (*it).Shops[i].Toys.size() == 0)
				cout &amp;lt;&amp;lt; &quot;No toys.&quot; &amp;lt;&amp;lt; endl;
			break;
		}
	}
	if (trademark == (*it).getTrademark() &amp;amp;&amp;amp; (*it).Shops.size() == 0) {
		cout &amp;lt;&amp;lt; &quot;No shops.&quot; &amp;lt;&amp;lt; endl;
		break;
	}
}&lt;/pre&gt;



&lt;p style=&quot;text-align: justify;&quot;&gt;Oddzielne funkcje wyświetlające sieci lub sieci ze sklepami napisałem w porządku, jednak z wyświetlaniem zabawek mam problem, stąd proszę o pomoc...&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/180725/zagniezdzone-petle-wyswietlanie-danych-z-kontenerow</guid>
<pubDate>Tue, 20 Sep 2016 14:39:42 +0000</pubDate>
</item>
<item>
<title>Odczyt danych z pliku z rozszerzeniem STL</title>
<link>https://forum.pasja-informatyki.pl/165706/odczyt-danych-z-pliku-z-rozszerzeniem-stl</link>
<description>

&lt;p&gt;Dzień dobry, jestem tutaj nowy.&lt;/p&gt;



&lt;p&gt;Piszę właśnie program odczytujący dane z pliku z rozszerzeniem STL.&lt;/p&gt;



&lt;p&gt;Problem jest następujący:&lt;/p&gt;



&lt;p&gt;Mam do napisania funkcję w c++, gdzie podaje parametr&amp;nbsp;&lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;filename&lt;/span&gt;&amp;nbsp;(nazwa pliku typu string). Mam wygenerować obiekt klasy &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;Object3D&lt;/span&gt;, który&amp;nbsp;przechowuje kontener (&lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;std::vector&lt;/span&gt;)&amp;nbsp;&lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;Point3D &lt;/span&gt;oraz kontener &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;Triangle3D&lt;/span&gt;. Obiekt klasy &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;Point3D &lt;/span&gt;zawiera pola typu double &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;x&lt;/span&gt;, &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;y&lt;/span&gt;, &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;z&lt;/span&gt; (współrzędne punktu&amp;nbsp;na płaszczyźnie trójwymiarowej), obiekt klasy &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;Triangle3D &lt;/span&gt;zawiera tablice typu int przechowującą indeksy punktów. Dane z pliku &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;.stl&lt;/span&gt; chce wczytać i zapisać do pamięci jako obiekt klasy &lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;Object3D&lt;/span&gt;.&amp;nbsp;&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
void ReaderSTL::loadFileStl(std::string filename)
{
    std::string str_filename = &quot;&quot;;
    str_filename = msclr::interop::marshal_as&amp;lt;std::string&amp;gt;(filename);
    std::ifstream in(str_filename, std::ios::in | std::ios::binary);
    if(in)
    {
        std::string contents;
        in.seekg(0, std::ios::end);
        contents.reserve(in.tellg());
        in.seekg(0, std::ios::beg);
        contents.assign((std::istreambuf_iterator&amp;lt;char&amp;gt;(in)), std::istreambuf_iterator&amp;lt;char&amp;gt;());
        in.close();     
    }
}&lt;/pre&gt;



&lt;p&gt;prosiłbym o jakieś wskazówki, albo żeby ktoś mądrzejszy mnie nakierował. Nigdy nie zajmowałem się odczytem danych z pliku stl, potrafię jedynie wypisać je w konsoli Windowsa, przeszukiwałem Google w poszukiwaniu jakieś wiedzy, czy wskazówek, próbuje jeszcze tutaj.&lt;/p&gt;



&lt;p&gt;Pozdrawiam uczeń liceum z klasy o profilu informatycznym.&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/165706/odczyt-danych-z-pliku-z-rozszerzeniem-stl</guid>
<pubDate>Fri, 05 Aug 2016 20:51:07 +0000</pubDate>
</item>
<item>
<title>Przekazanie tablicy vector'ow do funkcji</title>
<link>https://forum.pasja-informatyki.pl/148683/przekazanie-tablicy-vectorow-do-funkcji</link>
<description>Witam, wie ktos jak przekazac tablice vectorow postaci:
vectorvec[n] 
do wlasnej funcji?</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/148683/przekazanie-tablicy-vectorow-do-funkcji</guid>
<pubDate>Wed, 08 Jun 2016 12:57:34 +0000</pubDate>
</item>
<item>
<title>element listy STL jako parametr switch + wskaźnik na funkcje</title>
<link>https://forum.pasja-informatyki.pl/146170/element-listy-stl-jako-parametr-switch-wskaznik-na-funkcje</link>
<description>

&lt;p&gt;Tak jak w pytaniu czy istnieje jakaś możliwość przekazania wartości elementu listy (char) jako argumentu do switch case?&amp;nbsp;
&lt;br&gt;

&lt;br&gt;
A drugi problem to wskaźniki do funkcji. Alternatywą (jeśli nie da się przekazać elementu listy do switcha) byłoby przekazanie wskaźnika do funkcji jako elementu listy.&amp;nbsp;
&lt;br&gt;
Problem do rozwiązania jest następujący: muszę stworzyć listę metod które potrzebuje potem otworzyć zgodnie z kolejnością argumentów podanych przy wywołaniu programu. Podaje tu okrojony kod (orientacyjnie) żeby było wiadomo o co mi dokładnie chodzi. Ale nie wiem czy jest to dobre rozwiązanie. Bardzo dziękuję za wszelką pomoc :)&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
int main(int argc, char * argv[])
{
    list&amp;lt;char&amp;gt; lista;
    while(i&amp;lt;argc)
        {
            if (argv[i][0] == '-' )
            {
                switch (argv[i][1])
                {
                    case 'i':
                    {
                        /* wczytuje nazwe pliku z danymi */
                    }
                    case 'o':
                    {
                        /* wczytuje nazwe pliku do zapisu */
                    }
                    case 'G':
                    {
                        //funkcja z wywolaniem
                        oper = argv[i][1];
                        lista.push_back(oper);
                        i++;
                    }
                  /* ... dalej jeszcze kilka innych parametrow ... */
                    }
            else
                    {cout &amp;lt;&amp;lt; &quot;Błędne wywołanie\n\n&quot;;exit(1);}
            }
            /* teraz wywołuje liste z parametrami */
             for(list&amp;lt;char&amp;gt;::iterator list_iter = lista.begin(); list_iter != lista.end(); list_iter++)
             {
             cout&amp;lt;&amp;lt;&amp;amp;*list_iter&amp;lt;&amp;lt;endl;
                 /* w tym miejscu chciałem żeby wywołała się też odpowiednia funkcja 
                    przypisana do parametru */
             }
            
        }
}
&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/146170/element-listy-stl-jako-parametr-switch-wskaznik-na-funkcje</guid>
<pubDate>Mon, 30 May 2016 19:29:26 +0000</pubDate>
</item>
<item>
<title>Klasa umożliwiająca tworzenie grafów</title>
<link>https://forum.pasja-informatyki.pl/77147/klasa-umozliwiajaca-tworzenie-grafow</link>
<description>Postanowiłem napisać bo sam przeszukując różne artukuły zaczynam mieć mętlik w głowie.Nie posiadam żadnej wiedzy o grafach ( bo laboratoria idą szybciej niż wykłady) a mam za zadanie napisać:&lt;br /&gt;
&lt;br /&gt;
-Klasa umożliwiająca tworzenie grafów z wykorzystaniem szablonów&lt;br /&gt;
&lt;br /&gt;
-węzeł powinien zawierać pole dowolnego typu oraz ( z STL) wskaźniki na inne węzły&lt;br /&gt;
&lt;br /&gt;
Mam też inne podpunkty ale sposóbu ich zaimplementowania się domyslam.&lt;br /&gt;
&lt;br /&gt;
Czy moglibyście poratować jakimiś przydatnymi linkami ewentualnie kawałkami kodu, które mogą okazać się pomocne dla kogoś kto dopiero będzie poznawał tą tematykę.</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/77147/klasa-umozliwiajaca-tworzenie-grafow</guid>
<pubDate>Sat, 07 Nov 2015 18:54:33 +0000</pubDate>
</item>
<item>
<title>Czy multimapa sortuje się sama alfabetycznie</title>
<link>https://forum.pasja-informatyki.pl/66490/czy-multimapa-sortuje-sie-sama-alfabetycznie</link>
<description>Wstawiam do multimapy randomowo pary stringów.&lt;br /&gt;
Przy wypisywaniu multimapy są one wypisywane alfabetycznie (a nie w kolejności insertów). &lt;br /&gt;
&lt;br /&gt;
Czy tak powinno być (robiłem jeszcze inne algorytmy, któe nieopatrznie mogly coś popsuć)?&lt;br /&gt;
Czy jest tak we wszystkich kontenerach asocjacyjnych?</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/66490/czy-multimapa-sortuje-sie-sama-alfabetycznie</guid>
<pubDate>Mon, 05 Oct 2015 19:40:23 +0000</pubDate>
</item>
<item>
<title>Operator zamiast predykatu w algorytmach STLa - problem</title>
<link>https://forum.pasja-informatyki.pl/65758/operator-zamiast-predykatu-w-algorytmach-stla-problem</link>
<description>

&lt;pre class=&quot;brush:cpp;&quot;&gt;
//uczen.h

    Uczen ( string imie, string nazwisko, string telefon )
        : imie ( imie ), nazwisko ( nazwisko ), telefon ( telefon )
    {}

    bool operator== ( const Uczen&amp;amp; rhs ) {
        return rhs.imie == imie &amp;amp;&amp;amp; rhs.nazwisko == nazwisko;
    }

//dziennik.cpp - Dziennik - klasa, ktora przetrzymuje uczniow w vectorze
//funkcja Usun usuwa ucznia po imieniu i nazwisku

void Dziennik::Usun( string a, string b)
{
    Uczen os(a,b,&quot;11111&quot;); //tutaj tworze tak bardzo naiwnie, jest jakiś inny sposob, bez wpisywania telefonu?
    Uczen&amp;amp; ref=os;

    remove_if(wpisy.begin(), wpisy.end(), ref.operator==);
}&lt;/pre&gt;



&lt;p&gt;Dostaję taki bląd:
&lt;br&gt;
&lt;em&gt;Error &amp;nbsp; &amp;nbsp;1 &amp;nbsp; &amp;nbsp;error C3867: 'Uczen::operator ==': function call missing argument list; use '&amp;amp;Uczen::operator ==' to create a pointer to member&lt;/em&gt;&lt;/p&gt;



&lt;p&gt;Ale przecież robię ref.operator==, więc o co chodzi?&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/65758/operator-zamiast-predykatu-w-algorytmach-stla-problem</guid>
<pubDate>Sat, 03 Oct 2015 21:21:28 +0000</pubDate>
</item>
<item>
<title>Dwuwymiarowy kontener deque</title>
<link>https://forum.pasja-informatyki.pl/41171/dwuwymiarowy-kontener-deque</link>
<description>

&lt;p&gt;Na potrzeby aplikacji potrzebuję deque który będzie przechowywał deque przechowujący wskaźniki na klasę. Kombinowanie takie jest mi potrzebne aby swobodnie móc dodawać ilość obiektów klasy w kontenerze oraz ilość samych kontenerów. Sam nie potrafię takiego czekoś stworzyć:&amp;nbsp;&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
deque &amp;lt;deque &amp;lt;moja_klasa*&amp;gt;&amp;gt; nazwa;
----------------------------------------------------
for (int i=0; i&amp;lt;ilosc_obiektow; i++)
nazwa.push_front(deque&amp;lt;moja_klasa*&amp;gt;);
TEN KOD TOTALNIE NIE DZIALA

&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Dla mających więcej czasu :) &amp;nbsp; &amp;nbsp;:&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Staram się stworzyć dynamicznie wczytywaną mapę złożoną z kafelków(obieków klasy). Przy rozmiarach mapy powiedzmy 10x10 kafelków, poruszanie w lewo i prawo robię przy pomocy 10 deque, usuwam obiekty znajdujące się na początku/końcu, następnie usuwam je z kontenera i dynamicznie alokuje nowe, wpychając na drugim końcu. Jedna tablica = jeden wiersz tak w skrócie. Problem zaczyna się w momencie przesuwania w pionie. Planuje dodawać nową tablicę, zapełniać ją obiektami, a tą z drugiej strony&amp;nbsp;usuwać. Nie wiem jak będzie wygladała wydajność takiego monstrum oraz czy istnieje jakis lepszy sposób. Zastrzegam że właściwości kafelka są zapisane poza programem, więc sam obiekt musi być tworzony dynamicznie gdy jest potrzebny. &amp;nbsp;Potrzebuję czegoś na kształt macierza.&amp;nbsp;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/41171/dwuwymiarowy-kontener-deque</guid>
<pubDate>Fri, 17 Jul 2015 15:28:48 +0000</pubDate>
</item>
<item>
<title>Mój kolejny film na YouTube - C++/STL #1 - Wyszukiwanie binarne</title>
<link>https://forum.pasja-informatyki.pl/19621/moj-kolejny-film-na-youtube-c-stl-%231-wyszukiwanie-binarne</link>
<description>&lt;a href=&quot;https://www.youtube.com/watch?v=Co3W1INICIw&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://www.youtube.com/watch?v=Co3W1INICIw&lt;/a&gt; - to link do filmu. Co sądzicie?</description>
<category>Offtop</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/19621/moj-kolejny-film-na-youtube-c-stl-%231-wyszukiwanie-binarne</guid>
<pubDate>Mon, 11 May 2015 15:51:30 +0000</pubDate>
</item>
<item>
<title>Mój kolejny filmik na YouTube - C++/Sortowanie w STL.</title>
<link>https://forum.pasja-informatyki.pl/16669/moj-kolejny-filmik-na-youtube-c-sortowanie-w-stl</link>
<description>Link do filmu:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=2tVz-PrJGhU&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://www.youtube.com/watch?v=2tVz-PrJGhU&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Mam nadzieję, że przydatne.</description>
<category>Offtop</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/16669/moj-kolejny-filmik-na-youtube-c-sortowanie-w-stl</guid>
<pubDate>Fri, 01 May 2015 15:05:41 +0000</pubDate>
</item>
</channel>
</rss>