QkQuantumRegister
typedef struct QkQuantumRegister QkQuantumRegisterUma maneira comum de instanciar vários bits de uma vez é criar um registro. Um registro é um conjunto nomeado de bits. A criação de um registro permite dar a uma coleção de bits um nome que pode ser usado como metadados em torno de bits específicos em um circuito. Normalmente, esse nome também será preservado ao exportar o circuito para idiomas de intercâmbio.
É possível criar um registro chamando qk_quantum_register_new(), por exemplo:
#include <qiskit.h>
QkQuantumRegister *qreg = qk_quantum_register_new(5, "my_qreg");O que cria um novo registro de 5 qubits chamado "my_qreg".
Em seguida, para adicionar o registro a um circuito, use a função 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); // 5Embora os circuitos rastreiem os registros, os próprios registros quase não transmitem diferenças de comportamento aos circuitos.
Funções
qk_quantum_register_new
QkQuantumRegister *qk_quantum_register_new(uint32_t num_qubits, const char *name)
Construa um novo registro quântico proprietário com um determinado número de qubits e nome
Exemplo
QkQuantumRegister *qr = qk_quantum_register_new(5, "five_qubits");Segurança
O parâmetro name deve ser um ponteiro para a memória que contém um terminador nul válido no final da cadeia de caracteres. Ele também deve ser válido para leituras de bytes até o terminador nul, inclusive.
Parâmetros
- num_qubits - O número de qubits para criar o registro
- name - A cadeia de caracteres do nome do registro criado. O nome deve ser composto de caracteres válidos em UTF-8.
Retorna
Um ponteiro para o registro criado
qk_quantum_register_free
void qk_quantum_register_free(QkQuantumRegister *reg)
Libere um registro quântico.
Exemplo
QkQuantumRegister *qr = qk_quantum_register_new(1024, "qreg");
qk_quantum_register_free(qr);Segurança
O comportamento é indefinido se reg não for nulo ou um ponteiro válido para QkQuantumRegister.
Parâmetros
- reg - Um ponteiro para o registro a ser liberado.