View previous topic :: View next topic |
Author |
Message |
Dreamer
Joined: 08 Jan 2006 Posts: 70 Location: Riga
|
Posted: Thu Jan 12, 2006 12:45 pm Post subject: Convert c++ uz c# - pointeri |
|
Vai kaad luudzu nevareetu man paartulkot sho mazo koda gamalinju no c++ uz c#?
Code: |
//Verteksu struktuura
struct Vertex
{
float m_location[3];
};
// Lietotie verteksi
int m_numVertices;
Vertex *m_pVertices; //Kaa shito paarkonverteet uz c# t.i. neizmantojot pointerus?
|
|
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Thu Jan 12, 2006 12:52 pm Post subject: |
|
Jautājums ir tāds - ko tu gribi ar to pointeri tālāk darīt?
C++'ā pointeris pēc būtības ir masīvs. Tb ja tu definē to Vertex *m_pVertices, tad kodā tu vari rakstīt m_pVertices[10] = vvv; vai vvv = m_pVertices[1] (ja vien ir izdalīta pietiekoša atmiņa priekš tiem). |
|
Back to top |
|
|
gazz
Joined: 03 Jan 2004 Posts: 355 Location: Teika
|
Posted: Thu Jan 12, 2006 1:54 pm Post subject: |
|
Cik es skatos tad tu meegjini paartulkot Unmanaged DirectX specifisku kodu uz Managed. Tas arii noziimee ka shis kods nestraadas ja vinju burtiski paarnesiis. Tas tik vien pierāda ka tev vispirms būtu jāiziet visiem pamata tutoriāļiem, lai saprastu DirectX ideju. Lecot iekšā piemēros no kuriem nekā nesaproti var ātri apdedzināties.
PS Lieta ko tu mēģini izdarīt ir pārvērst CustomVertex no unmanaged uz managed un es uzreiz varu pateikt ka tas nedaudz atšķirās.
Ieksh C# ar Managed DirectX tas izskatītos
Code: |
PositionOnly[] m_vertices;
int m_numVertices;
// izveidojot bufferi - vienkaarshi
m_vertices = new PositionOnly[m_numVertices];
|
Atkariibaa no versijas - uz DirectX priekhs .NET 1.1 struktuura PositionOnly atradiisies ieksh CustomVertex enumeraacijas, savukaart uz DirectX priekhs .NET 2.0(dotais gadiijums) PositionOnly atradiisies ieksh Microsoft.DirectX.Direct3D.CustomVertex namespeisa. |
|
Back to top |
|
|
|