<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.freemedialab.org/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.freemedialab.org/wiki/feed.php">
        <title>FreeMediaLab - programmazione:cpp</title>
        <description></description>
        <link>https://www.freemedialab.org/wiki/</link>
        <image rdf:resource="https://www.freemedialab.org/wiki/lib/exe/fetch.php?media=wiki:dokuwiki.svg" />
       <dc:date>2026-09-25T22:34:08+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:appunti_cpp&amp;rev=1789491135&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:buone_pratiche&amp;rev=1788772665&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:crowcpp_wxwebview&amp;rev=1761812584&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:funzione_split_string&amp;rev=1761335869&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:json&amp;rev=1761340618&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:prelevare_il_valore_di_una_variabile_shell&amp;rev=1746691356&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.freemedialab.org/wiki/lib/exe/fetch.php?media=wiki:dokuwiki.svg">
        <title>FreeMediaLab</title>
        <link>https://www.freemedialab.org/wiki/</link>
        <url>https://www.freemedialab.org/wiki/lib/exe/fetch.php?media=wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:appunti_cpp&amp;rev=1789491135&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-09-15T16:52:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>appunti_cpp</title>
        <link>https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:appunti_cpp&amp;rev=1789491135&amp;do=diff</link>
        <description>Alcuni veloci appunti su C++

Autore: Fabio Di Matteo 
Ultima revisione:    10/09/2026 13:45      

Ho fatto alcune pagine simili su Rust e Go, quindi perchè non farle anche su C++. Si preferirà uno standard moderno.

Buone pratiche

Dato che il C/C++ offrono massima libertà nella gestine della memoria, possono (e non devono) essere pericolosi . Dunque ho raccolto alcune buone pratiche da tenere a mente qui:</description>
    </item>
    <item rdf:about="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:buone_pratiche&amp;rev=1788772665&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-09-07T09:17:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>buone_pratiche</title>
        <link>https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:buone_pratiche&amp;rev=1788772665&amp;do=diff</link>
        <description>Buone pratiche di programmazione in C/C++

Autore: Fabio Di Matteo 
Ultima revisione:    07/09/2026 10:59      

Buone pratiche di programmazione in C/C++ e cose da evitare.
 Costrutto/funzione  Linguaggio  Perché è pericoloso  Alternativa più sicura</description>
    </item>
    <item rdf:about="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:crowcpp_wxwebview&amp;rev=1761812584&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-30T08:23:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>crowcpp_wxwebview</title>
        <link>https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:crowcpp_wxwebview&amp;rev=1761812584&amp;do=diff</link>
        <description>Usare Crowcpp con una wxWebview

Autore: Fabio Di Matteo 
Ultima revisione:    30/10/2025 09:03      

Un esempio minimo di come usare una wxWebview con CrowCpp.

main.cc



#include &lt;wx/wxprec.h&gt;
#ifndef WX_PRECOMP
    #include &lt;wx/wx.h&gt;
#endif
#include &quot;wx/xrc/xmlres.h&quot;
#include &lt;wx/webview.h&gt;

#include &quot;crow.h&quot; 

class crowThread : public wxThread
{
   public:
	crowThread();
 
   private:
	virtual void *Entry();
};
 
crowThread::crowThread(): wxThread(wxTHREAD_DETACHED) 
{
 
}
 
void *crowThr…</description>
    </item>
    <item rdf:about="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:funzione_split_string&amp;rev=1761335869&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-24T19:57:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>funzione_split_string</title>
        <link>https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:funzione_split_string&amp;rev=1761335869&amp;do=diff</link>
        <description>Una funzione per creare un vettore di stringhe da una stringa e un delimitatore

Autore: Fabio Di Matteo 
Ultima revisione:    24/10/2025 17:29      


#include &lt;iostream&gt;
#include &lt;vector&gt;
...
std::vector&lt;std::string&gt; split(std::string s, char d, int max=0)
{
     std::string e;
     std::vector&lt;std::string&gt; list;
     int token=0;
     
     for (std::string::size_type i = 0; i&lt;s.size(); ++i)
     {
            if (s[i]==d)
            {
              list.push_back(e);
              e.clear()…</description>
    </item>
    <item rdf:about="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:json&amp;rev=1761340618&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-24T21:16:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>json</title>
        <link>https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:json&amp;rev=1761340618&amp;do=diff</link>
        <description>Usare le strutture dati json in C++

Autore: Fabio Di Matteo 
Ultima revisione:    24/10/2025 23:14      

Alcuni esempi:


#include &quot;json.hpp&quot;
#include &lt;string&gt;
#include &lt;iostream&gt;

using json = nlohmann::json;

void print(auto s)
{
    std::cout&lt;&lt;s&lt;&lt;std::endl;
}

int main() {
    // costruire JSON
    json j;
    j[&quot;name&quot;] = &quot;Fabio Di Matteo&quot;;
    j[&quot;age&quot;] = 45;

    // serializzare a stringa
    std::string s = j.dump();           // compact
    std::string pretty = j.dump(4);     // pretty-p…</description>
    </item>
    <item rdf:about="https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:prelevare_il_valore_di_una_variabile_shell&amp;rev=1746691356&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-08T08:02:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>prelevare_il_valore_di_una_variabile_shell</title>
        <link>https://www.freemedialab.org/wiki/doku.php?id=programmazione:cpp:prelevare_il_valore_di_una_variabile_shell&amp;rev=1746691356&amp;do=diff</link>
        <description>Prelevare il valore di una variabile shell

Autore: Fabio Di Matteo 
Ultima revisione: 24/04/2008 


Una proatica funzione che permette di fare quanto sopra detto:

Metodo &quot;standard&quot;

Si usa di solito la funzione getenv in questo modo:

 char *MiaVarShell = getenv(&quot;HOME&quot;)</description>
    </item>
</rdf:RDF>
