std string ja Qt

kjbnkj

Teen C ohjelman ydintä Code Blocksilla ja käyttöliittymän Qtn C :lla.
Ydintä teen ihan vain console ohjelmana ja tarkoituksena on pitää ydin ja käyttöliittymä ohjelman kehityksen aikana selvästi erillään.

Joitakin muuttujia, tai enemmänkin vakioita olen määritellyt näin:
#define Accident 4

Debuggauksen vuosi haluan laittaa joitakin muuttujia stringeiksi jotta niiden sisältö näkyisi debuggerissa, muutoinhan tuo näkyy vain nelosena. Toisekseen niitä pitäisi pystyä koodissa vertailemaan yhtä yksinkertaisesti kuin kokonaislukuja.

Minkä kirjaston stringiä kannattaisi käyttää ettei linkitysongelmia tulisi myöhemmin vastaan?

5

324

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Affiliate-Julkaisia

      #include <iostream>

      using namespace std;

      #define KORVATTAVA "korvaava teksti, joka tulee sanan KORVATTAVA tilalle"
      #define luku 12

      int main()
      {
      int a;
      int b;

      a = 11;
      b = a luku;

      cout << KORVATTAVA << endl;
      cout << int(b) << endl;

      return 0;
      }

      http://paste.ofcode.org/JAgNLQZWd6unbrZveJWZsL


      #define = Makron määrittely, merkkijonot lainausmerkkien sisään, luvut ilman.
      Tuskin ymmärsin oikein.

    • kjbnkj

      definellä on siis esikääntäjä muuttanut selkokielisen tekstin int tyyppiseksi joka sopii hyvin vertailuun == , != jne. enimmäkseen ehtolauseissa, koodissa on saanut käyttää selkokielisiä muuttujia.

      Oikeastaan ois pitänyt kysyä minkä kirjaston string ois helppo käyttöisin ja pelais yhteen CodeBlockin ja Qtn kanssa, ja käytettävien kirjastojen määrä pysyisi minimissä.

      CString, std::string ja mitä niitä onkaan open source puolella?

      • Affiliate-Julkaisia

        En osaa vastata tuohon.


      • 102030405060

        Jossei std:string kelpaa, niin Qt:n QString kyllä on erittäin helppo käyttöinen.


    • viuh-vauh

      Jossei ole mitään erittäin hirveän tärkeän oleellista ja ylitsepääsemätöntä syytä olla käyttämättä QStringiä kaikkialla, niin kannattaa ottaa QString kaikkialla käyttöön jo heti alkuunsa. Qt:llä tehty käyttöliittymä käyttää kuitenkin QStringiä, ja merkkijonojen muuntelu std::stringin ja QStringin välillä on vain turhaa ylimääräistä rumbaa, minkä kyllä huomaa projektin edetessä.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Kelekkakisat

      Mikä vakava onnettomuus sattunut kisoissa. On peruttu koko kisat. Pelastuskopteri näytti käyvän paikalla.
      Nivala
      21
      10855
    2. Aivan kauheaa

      Veikö koskiuoma taas ihmishengen? Se pitää kieltää!
      Imatra
      40
      8107
    3. Onko kaivattusi

      …mielestäsi älykäs, tai kenties tyhmä? Oma mielipide.
      Ikävä
      123
      5211
    4. Kuinka pitkä välimatka

      on teidän kotien välillä?
      Ikävä
      122
      3569
    5. Epäilen ettet edes

      Kehtaisi liikkua kanssani.
      Ikävä
      69
      3548
    6. Virkamiehille tarvitaan tuntuvat palkankorotukset

      Naistenpäivänä on syytä muistuttaa, että virkamiehen euro on vain 80 senttiä. Palkat tulee saattaa samalle tasolle yksi
      Maailman menoa
      34
      3498
    7. Oletko huomannut

      Yhden muutoksen?
      Ikävä
      33
      3137
    8. Jäikö meidän välit

      Mielestäsi Kesken?
      Ikävä
      54
      2483
    9. Olisipa saanut sinuun

      Tutustua paremmin. Harmi että aloin lopulta jännittämään kun näytit tunteesi niin voimakkaasti ja lähestyit niin voimaak
      Ikävä
      35
      1981
    10. Miltä mahtaa tuntua

      Sitten kun näet hänet pitkästä aikaa?
      Tunteet
      28
      1766
    Aihe