QkQuantumRegister
typedef struct QkQuantumRegister QkQuantumRegisterUna forma habitual de instanciar varios bits a la vez es crear un registro. Un registro es una colección de bits con nombre. La creación de un registro permite dar un nombre a una colección de bits que puede utilizarse como metadatos en torno a bits específicos de un circuito. Normalmente, este nombre también se conserva al exportar el circuito a otros idiomas.
Puede crear un registro llamando a qk_quantum_register_new(), por ejemplo:
#include <qiskit.h>
QkQuantumRegister *qreg = qk_quantum_register_new(5, "my_qreg");Lo que crea un nuevo registro de 5 qubits llamado "my_qreg".
A continuación, para añadir el registro a un circuito se utiliza la función qk_circuit_add_quantum_register() :
QkCircuit *qc = qk_circuit_new(0, 0);
qk_circuit_add_quantum_register(qc, qreg);
uint32_t num_qubits = qk_circuit_num_qubits(qc); // 5Aunque los circuitos rastrean los registros, los propios registros no aportan apenas diferencias de comportamiento a los circuitos.
Funciones
qk_quantum_register_new
QkQuantumRegister *qk_quantum_register_new(uint32_t num_qubits, const char *name)
Construir un nuevo registro cuántico propio con un número determinado de qubits y un nombre
Ejemplo
QkQuantumRegister *qr = qk_quantum_register_new(5, "five_qubits");Seguridad
El parámetro name debe ser un puntero a memoria que contenga un terminador nul válido al final de la cadena. También debe ser válido para lecturas de bytes hasta el terminador nul incluido.
Parámetros
- num_qubits - Número de qubits para los que se crea el registro
- name - La cadena de nombre para el registro creado. El nombre debe estar compuesto por caracteres válidos de UTF-8.
Devuelve
Un puntero al registro creado
qk_quantum_register_free
void qk_quantum_register_free(QkQuantumRegister *reg)
Libera un registro cuántico.
Ejemplo
QkQuantumRegister *qr = qk_quantum_register_new(1024, "qreg");
qk_quantum_register_free(qr);Seguridad
El comportamiento es indefinido si reg no es null o un puntero válido a QkQuantumRegister.
Parámetros
- reg - Un puntero al registro a liberar.