C++ -kysymykset

Muu yhteisön välinen keskustelu.
User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:
Re: C++ -kysymykset

Post by Koodiapina » Wed Jan 23, 2008 8:29 pm

Kokeilin tätä visuaalista C++:ssaa, ja heti tuli ongelmia määritteiden kanssa. Mitä teen jos copy-paste koodin kommenttina on

Code: Select all

// compile with: /clr
? Kun kirjoitan siis tämän koko koodin, tulee virhe jo ekalla koodi rivillä:

Code: Select all

// text_read.cpp
// compile with: /clr
#using <system.dll>
using namespace System;
using namespace System::IO;

int main()
{
   String^ fileName = "textfile.txt";
   try 
   {
      Console::WriteLine("trying to open file {0}...", fileName);
      StreamReader^ din = File::OpenText(fileName);

      String^ str;
      int count = 0;
      while ((str = din->ReadLine()) != nullptr) 
      {
         count++;
         Console::WriteLine("line {0}: {1}", count, str );
      }
   }
   catch (Exception^ e)
   {
      if (dynamic_cast<FileNotFoundException^>(e))
         Console::WriteLine("file '{0}' not found", fileName);
      else
         Console::WriteLine("problem reading file '{0}'", fileName);
   }

   return 0;
}
Ja itse koodissa ei voi olla virhettä, koska se on suoraan mukanatulevista dokumenteista. Haluan siis tietää, miten ohjelma tulisi ajaa.
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
Dande
Active Member
Posts:193
Joined:Tue Aug 28, 2007 4:30 pm

Re: C++ -kysymykset

Post by Dande » Wed Jan 23, 2008 8:59 pm

Grandi wrote:Kokeilin tätä visuaalista C++:ssaa, ja heti tuli ongelmia määritteiden kanssa. Mitä teen jos copy-paste koodin kommenttina on

Code: Select all

// compile with: /clr
? Kun kirjoitan siis tämän koko koodin, tulee virhe jo ekalla koodi rivillä:

Code: Select all

// text_read.cpp
// compile with: /clr
#using <system.dll>
using namespace System;
using namespace System::IO;

int main()
{
   String^ fileName = "textfile.txt";
   try 
   {
      Console::WriteLine("trying to open file {0}...", fileName);
      StreamReader^ din = File::OpenText(fileName);

      String^ str;
      int count = 0;
      while ((str = din->ReadLine()) != nullptr) 
      {
         count++;
         Console::WriteLine("line {0}: {1}", count, str );
      }
   }
   catch (Exception^ e)
   {
      if (dynamic_cast<FileNotFoundException^>(e))
         Console::WriteLine("file '{0}' not found", fileName);
      else
         Console::WriteLine("problem reading file '{0}'", fileName);
   }

   return 0;
}
Ja itse koodissa ei voi olla virhettä, koska se on suoraan mukanatulevista dokumenteista. Haluan siis tietää, miten ohjelma tulisi ajaa.
Luo uusi CLR-projekti, ei win32-projekti, johon sitten pasteat tuon koodin

User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:

Re: C++ -kysymykset

Post by Koodiapina » Wed Jan 23, 2008 9:13 pm

Okei, kiitos. Luulin että tuo /clr on käynnistysparametri :D
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
jannepelaa
Active Member
Posts:101
Joined:Tue Aug 28, 2007 2:27 pm

Re: C++ -kysymykset

Post by jannepelaa » Thu Jan 24, 2008 5:52 pm

EDIT:
Mikä vikana? Vm.cpp:ssa on funktio ProcessCode, joka käyttää ifstreamia ja stringiä, mutta niitä ei voi käyttää. Using namespace std;:nhän pitäisi olla niin, ettei tarvitse kirjoittaa std::stringiä, mutta vaikka using namespace std;:n ottaisi pois ja kirjoittaisi kaikkien stringien, yms. eteen std::, niin ei toimi. On jo aikaa kun viimeksi ohjelmoin, niin en muista mitä tehdä. :(
(Entinen kuva)

EDIT2:
Jos asetuksista laittaa 'Use Precompiled Header (/Yu)' päälle, niin ainoaksi virheeksi muodostuu:
"fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "stdafx.h"' to your source?"
BF++.cpp:n alussa on kyllä '#include "stdafx.h"'. Missä vika?
Last edited by jannepelaa on Fri Jan 25, 2008 3:34 pm, edited 1 time in total.

User avatar
anttipanda
Active Member
Posts:248
Joined:Mon Aug 27, 2007 9:23 pm
Location:Oulu

Re: C++ -kysymykset

Post by anttipanda » Fri Jan 25, 2008 9:25 am

Luopa tyhjä konsoliprojekti, eli ensin Win32 console, sen jälkeen avautuvata ikkunasta application settings ja Empty Project.

Btw, miksi olet includettanut VM.cpp:n?
OoO

User avatar
jannepelaa
Active Member
Posts:101
Joined:Tue Aug 28, 2007 2:27 pm

Re: C++ -kysymykset

Post by jannepelaa » Fri Jan 25, 2008 3:32 pm

anttipanda wrote:Luopa tyhjä konsoliprojekti, eli ensin Win32 console, sen jälkeen avautuvata ikkunasta application settings ja Empty Project.

Btw, miksi olet includettanut VM.cpp:n?
Kun laitoin vm.cpp:ssan tilalle vm.h:n, niin homma rupesi toimimaan. :D

Ja olin laittanut VM.cpp kai vahingossa.

User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:

Re: C++ -kysymykset

Post by Koodiapina » Sat Jan 26, 2008 7:17 pm

Code: Select all

C:\Program Files\Microsoft SDKs\Windows\v6.0A\\lib\kernel32.lib : fatal error LNK1107: invalid or corrupt file: cannot read at 0x18000
Tollanen tulee mulla mitä vain projektia buildatessa. Oliskohan virukset tai matoset nakerrelleet kyseistä tiedostoa? Pitäisköhän koko vcpp asentaa uudestaan?
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
anttipanda
Active Member
Posts:248
Joined:Mon Aug 27, 2007 9:23 pm
Location:Oulu

Re: C++ -kysymykset

Post by anttipanda » Mon Jan 28, 2008 10:47 am

Grandi wrote:

Code: Select all

C:\Program Files\Microsoft SDKs\Windows\v6.0A\\lib\kernel32.lib : fatal error LNK1107: invalid or corrupt file: cannot read at 0x18000
Tollanen tulee mulla mitä vain projektia buildatessa. Oliskohan virukset tai matoset nakerrelleet kyseistä tiedostoa? Pitäisköhän koko vcpp asentaa uudestaan?
Tarkista tuo polku, omalla koneellani ei ainakaan ole tuollaista tiedostoa. Näyttää olevan kaksi kenoviivaakin peräkkäin tuossa polussa. Eli luultavasti vain projektin asetukset pielessä.

Itselläni kernel32.lib löytyy kansiosta C:\Program Files\Microsoft Visual Studio 8\VC\lib\
Last edited by anttipanda on Mon Jan 28, 2008 10:48 am, edited 1 time in total.
OoO

User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:

Re: C++ -kysymykset

Post by Koodiapina » Mon Jan 28, 2008 3:59 pm

Voisitko vielä kertoa, että miten niitä projektin asetuksia saa säädettyä? En ainakaan 'Propery pageseista' löytänyt.
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
anttipanda
Active Member
Posts:248
Joined:Mon Aug 27, 2007 9:23 pm
Location:Oulu

Re: C++ -kysymykset

Post by anttipanda » Mon Jan 28, 2008 4:41 pm

Solution Explorerissa, righclickkiä projektin nimen kohdalle ja valitset properties. Tämä aukaisee projektin asetusikkunan (juurikin Property Pages), josta sitten Configuration Properties -> Linker -> Input -> ja luullakseni additional depedencies. En ole tästä ihan satavarma, kun Visual Studio 2005 pro:ssä oli muistaakseni eri näköinen tuo linkkerin asetusikkuna, ja tuolla olen viimeksi vakavaa Win32 C++:aa harrastellut.
OoO

User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:

Re: C++ -kysymykset

Post by Koodiapina » Mon Jan 28, 2008 4:57 pm

Ei löytynyt tuota linker - juttua sieltä :(
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
anttipanda
Active Member
Posts:248
Joined:Mon Aug 27, 2007 9:23 pm
Location:Oulu

Re: C++ -kysymykset

Post by anttipanda » Tue Jan 29, 2008 11:41 am

Niin siitä Treeviewistä ei muka Linker-nodea löydy? Onko projektina Win32-pohjainen vai CLR-pohjainen (.NET)?
OoO

User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:

Re: C++ -kysymykset

Post by Koodiapina » Tue Jan 29, 2008 4:41 pm

anttipanda wrote:Niin siitä Treeviewistä ei muka Linker-nodea löydy?
No ei.
anttipanda wrote:Onko projektina Win32-pohjainen vai CLR-pohjainen (.NET)?
CLR.
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
anttipanda
Active Member
Posts:248
Joined:Mon Aug 27, 2007 9:23 pm
Location:Oulu

Re: C++ -kysymykset

Post by anttipanda » Tue Jan 29, 2008 5:39 pm

Grandi wrote:
anttipanda wrote:Niin siitä Treeviewistä ei muka Linker-nodea löydy?
No ei.
anttipanda wrote:Onko projektina Win32-pohjainen vai CLR-pohjainen (.NET)?
CLR.
Hmm. Kokeilin äkkiä tehdä CLR-konsoliprojektin, ja kyllä sieltä löytyi ihan ok (Visual C++ Express 2005).
evo.PNG
evo.PNG (25.92KiB)Viewed 7374 times
OoO

User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:

Re: C++ -kysymykset

Post by Koodiapina » Tue Jan 29, 2008 5:50 pm

Ahaa. Pitää näemmä valita tosta combolaatikosta "active(debug)" joka mulla oli oletuksena "active(release)". Kiitos.
EDIT:

En saanut sieltä muutettua tiedostopolkua oikeaksi.

Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
anttipanda
Active Member
Posts:248
Joined:Mon Aug 27, 2007 9:23 pm
Location:Oulu

Re: C++ -kysymykset

Post by anttipanda » Wed Jan 30, 2008 1:51 pm

Grandi wrote:Ahaa. Pitää näemmä valita tosta combolaatikosta "active(debug)" joka mulla oli oletuksena "active(release)". Kiitos.
EDIT:

En saanut sieltä muutettua tiedostopolkua oikeaksi.

Sori, ei sitä sieltä näköjään vaihdetakaan. Elikäs, Visual C++:n asetuksista voidaan vaihtaa yleisesti käytety polut joista libraryjä etsitään:

Tools -> Options... -> ja
options.png
options.png (20.73KiB)Viewed 7309 times
Tämän lisäksi jokaiselle projektille jokaiselle konfiguraatiolle voidaan lisätä omia polkuja:
properties.png
properties.png (27.87KiB)Viewed 7309 times
Toivottavasti noista on jotain apua, jos nuo näyttävät suurin piirtein oikeilta nuo "yleispolut", niin sitten pitäisi alkaa tutkimaan että mitä arvoja on noilla muuttujilla on.
OoO

User avatar
Koodiapina
Forum Veteran
Posts:2396
Joined:Tue Aug 28, 2007 4:20 pm
Contact:

Re: C++ -kysymykset

Post by Koodiapina » Wed Jan 30, 2008 4:31 pm

Tän näkönen ikkuna on mulla;
Image
Eli mitäs tosta oikein muokkaillaan?
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

User avatar
vilQuri
Active Member
Posts:239
Joined:Wed Aug 29, 2007 6:25 pm
Location:Turku

Re: C++ -kysymykset

Post by vilQuri » Sun Feb 03, 2008 10:10 pm

Saako DarkGDK:oota Dev-C++:alle jotenkin. Muuten käyttäisn VisualC++ 2008 mutta kun en oikein ole tottunut käyttämään sitä :mrgreen:

User avatar
anttipanda
Active Member
Posts:248
Joined:Mon Aug 27, 2007 9:23 pm
Location:Oulu

Re: C++ -kysymykset

Post by anttipanda » Mon Feb 04, 2008 10:40 am

vilQuri wrote:Saako DarkGDK:oota Dev-C++:alle jotenkin. Muuten käyttäisn VisualC++ 2008 mutta kun en oikein ole tottunut käyttämään sitä :mrgreen:
No headereita ja staattisia kirjastoja tuo DarkGDK mahtaa olla, joten miksipä ei saisi. Muutat kääntäjäsi asetuksia siten että se löytää nuo tiedostot ja käännät menemään. En sitten tiiä onko tuossa paketissa jotain ihmeellisiä työkaluja yms. mukana mitkä toimisivat Visual C++:n kanssa...
OoO

cheeshelmet.jr
Member
Posts:75
Joined:Tue Aug 28, 2007 6:59 am

Re: C++ -kysymykset

Post by cheeshelmet.jr » Wed Feb 13, 2008 4:47 pm

kuinka voin kääntää koodin esim dll:ksi

Post Reply