Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

131
Views
¿Cómo convertiría List<T> a Vector<T> C#?

Estoy usando la biblioteca de vectores C# using System.Numerics; Necesito convertir la lista en un vector

He intentado implícita y explícitamente convertir el tipo pero no tiene compatibilidad incorporada. He leído la documentación buscando un método que pueda hacer esta conversión, pero no encontré ninguno adecuado.

Sé que podría lograr esta conversión usando un ciclo for simple, pero hacer esta conversión muchas veces dentro de mi programa parece terriblemente ineficiente y me pregunto si alguien conoce una mejor manera de obtener el mismo resultado.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Vector<T> tiene un constructor que toma un Span<T> y CollectionsMarshal.AsSpan le permite obtener un Span<T> de una List<T> .

P.ej:

 var list = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8 }; var vector = new Vector<int>(CollectionsMarshal.AsSpan(list));

Ver en SharpLab .

Esto da como resultado una única copia de memoria del contenido de la matriz que respalda a List<T> , a la memoria que respalda a Vector<T> .

Preste atención a las advertencias en los documentos para CollectionsMarshal.AsSpan : devuelve una referencia a la matriz que actualmente respalda List<T> , pero eso cambiará si la lista se actualiza. Sin embargo, solo para tomar una instantánea para copiar en un Vector<T> , está bien.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!