{"id":15985,"date":"2024-07-01T08:00:48","date_gmt":"2024-07-01T15:00:48","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=15985"},"modified":"2025-06-13T21:07:20","modified_gmt":"2025-06-14T04:07:20","slug":"announcing-general-availability-of-the-cpp-sdk-for-couchbase","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/","title":{"rendered":"Disponibilidad general del SDK de C++ para Couchbase"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Estamos encantados de anunciar la Disponibilidad General (AG) del <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/hello-world\/start-using-sdk.html\"><span style=\"font-weight: 400;\">SDK PARA C <\/span><\/a><span style=\"font-weight: 400;\">\u00a1para Couchbase! Esta versi\u00f3n a\u00f1ade soporte para el lenguaje nativo C++ a nuestro completo conjunto de <\/span><a href=\"https:\/\/docs.couchbase.com\/home\/index.html\"><span style=\"font-weight: 400;\">Bibliotecas SDK<\/span><\/a><span style=\"font-weight: 400;\"> en 11 lenguajes de programaci\u00f3n y marca un hito importante en nuestro compromiso de ofrecer herramientas s\u00f3lidas y de alto rendimiento para que los desarrolladores creen aplicaciones modernas y escalables. De hecho, este kit de desarrollo de software para C++ es la biblioteca central de nuestro actual kit de desarrollo de software para C++. <\/span><a href=\"https:\/\/docs.couchbase.com\/python-sdk\/current\/hello-world\/start-using-sdk.html\"><span style=\"font-weight: 400;\">Python<\/span><\/a><span style=\"font-weight: 400;\">, <\/span><a href=\"https:\/\/docs.couchbase.com\/nodejs-sdk\/current\/hello-world\/start-using-sdk.html\"><span style=\"font-weight: 400;\">NodeJS<\/span><\/a><span style=\"font-weight: 400;\">, <\/span><a href=\"https:\/\/docs.couchbase.com\/ruby-sdk\/current\/hello-world\/start-using-sdk.html\"><span style=\"font-weight: 400;\">Ruby<\/span><\/a><span style=\"font-weight: 400;\">y <\/span><a href=\"https:\/\/docs.couchbase.com\/php-sdk\/current\/hello-world\/start-using-sdk.html\"><span style=\"font-weight: 400;\">PHP<\/span><\/a><span style=\"font-weight: 400;\"> SDK y se esfuerza por ofrecer una experiencia coherente, eficaz y eficiente en todos estos lenguajes de programaci\u00f3n.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">\u00bfPor qu\u00e9 C++ SDK?<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">C++ sigue siendo un lenguaje vital para muchos desarrolladores debido a su rendimiento, eficiencia y control sobre los recursos del sistema. Con la introducci\u00f3n del SDK de C++, Couchbase permite a los desarrolladores aprovechar estas ventajas y sacar el m\u00e1ximo partido de las avanzadas capacidades NoSQL de Couchbase. Estas son algunas de las razones por las que esta versi\u00f3n cambia las reglas del juego:<\/span><\/p>\n<h3 style=\"padding-left: 40px;\"><span style=\"font-weight: 400;\">Rendimiento<\/span><\/h3>\n<p style=\"padding-left: 40px;\"><span style=\"font-weight: 400;\">C++ es conocido por su velocidad y su gesti\u00f3n de memoria de bajo nivel, lo que lo hace ideal para aplicaciones donde el rendimiento es cr\u00edtico. El SDK de C++ para Couchbase garantiza que puedas crear aplicaciones de alto rendimiento sin sacrificar la velocidad ni la eficiencia.<\/span><\/p>\n<h3 style=\"padding-left: 40px;\"><span style=\"font-weight: 400;\">Integraci\u00f3n perfecta<\/span><\/h3>\n<p style=\"padding-left: 40px;\"><span style=\"font-weight: 400;\">El SDK de C++ proporciona una integraci\u00f3n perfecta con Couchbase Server, permitiendo a los desarrolladores realizar f\u00e1cilmente operaciones como operaciones KV, consultas SQL++ y transacciones. Esta estrecha integraci\u00f3n garantiza que tus aplicaciones puedan escalar eficazmente manteniendo un alto rendimiento.<\/span><\/p>\n<h3 style=\"padding-left: 40px;\"><span style=\"font-weight: 400;\">Dise\u00f1o moderno de API<\/span><\/h3>\n<p style=\"padding-left: 40px;\"><span style=\"font-weight: 400;\">El SDK de C++ presenta una API moderna e idiom\u00e1tica que se ajusta a los \u00faltimos est\u00e1ndares de C++. Esto hace que no solo sea potente, sino tambi\u00e9n intuitivo para los desarrolladores de C++, lo que reduce la curva de aprendizaje y permite empezar a crear aplicaciones r\u00e1pidamente.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Caracter\u00edsticas principales<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Estas son algunas de las caracter\u00edsticas m\u00e1s destacadas del SDK de C++ para Couchbase:<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Gesti\u00f3n sencilla de las conexiones<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">El SDK de C++ simplifica <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/managing-connections.html\"><span style=\"font-weight: 400;\">gesti\u00f3n de conexiones<\/span><\/a><span style=\"font-weight: 400;\">te permite establecer y gestionar conexiones a tu cl\u00faster de Couchbase con el m\u00ednimo esfuerzo. Esto incluye el manejo de la agrupaci\u00f3n de conexiones, el equilibrio de carga y la conmutaci\u00f3n por error, lo que garantiza que tu aplicaci\u00f3n siga siendo resistente y tenga un buen rendimiento. Esto significa que el SDK puede leer autom\u00e1ticamente la topolog\u00eda de su cl\u00faster y proporcionar conexiones sin problemas durante los cambios de topolog\u00eda, tales como cambios de tama\u00f1o de cl\u00faster o actualizaciones de cl\u00faster. A continuaci\u00f3n se muestra un ejemplo de c\u00f3digo C++ para conectarse a su base de datos couchbase.<\/span><\/p>\n<pre class=\"nums:false wrap:true lang:c++ decode:true\">\/\/ Attempt to connect to the Couchbase cluster\r\nauto [connect_err, cluster] = couchbase::cluster::connect(config.connection_string, options).get();\r\n\r\nif (connect_err) {\r\n    \/\/ Output the error message if connection fails\r\n    std::cout &lt;&lt; \"Unable to connect to the cluster. Error code: \" &lt;&lt; connect_err.message() &lt;&lt; \"\\n\";\r\n} else {\r\n    auto collection = cluster.bucket(config.bucket_name)\r\n                             .scope(config.scope_name)\r\n                             .collection(config.collection_name);\r\n\r\n    \/\/ d something interesting\r\n\r\n    cluster.close().get();\r\n}\r\n<\/pre>\n<h3><span style=\"font-weight: 400;\">Soporte de operaciones clave-valor (KV)<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">El SDK de C++ soporta de forma nativa la realizaci\u00f3n de <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/kv-operations.html\"><span style=\"font-weight: 400;\">operaciones clave-valor<\/span><\/a><span style=\"font-weight: 400;\">. Las operaciones clave-valor son exclusivas de couchbase y proporcionan operaciones CRUD muy r\u00e1pidas para documentos almacenados en couchbase. A continuaci\u00f3n se muestra un ejemplo de c\u00f3digo C++ para ejecutar una simple KV <\/span><span style=\"font-weight: 400;\">consiga<\/span><span style=\"font-weight: 400;\"> &amp; upsert de un documento.<\/span><\/p>\n<pre class=\"nums:false wrap:true lang:c++ decode:true\">auto collection = cluster.bucket(config.bucket_name)\r\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.scope(config.scope_name)\r\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0.collection(config.collection_name);\r\n\r\n\/\/ KV- get\r\nauto record = collection.get(document_id);\r\nstd::cout &lt;&lt; record.content_as() &lt;&lt; \"\\n\";\r\n\r\n\/\/ create a new document\r\nconst std::string document_id{ \"minimal_example\" };\r\nconst tao::json::value basic_doc{\r\n\u00a0\u00a0{ \"a\", 1.0 },\r\n\u00a0\u00a0{ \"b\", 2.0 },\r\n};\r\n\r\n\/\/ KV\u00a0\r\nauto [err, resp] = collection.upsert(document_id, basic_doc, {}).get();\r\nif (err.ec()) {\r\n\u00a0\u00a0std::cout &lt;&lt; \"ec: \" &lt;&lt; err.message() &lt;&lt; \", \";\r\n} else {\r\n\u00a0\u00a0std::cout &lt;&lt; \"id: \" &lt;&lt; document_id &lt;&lt; \", CAS: \" &lt;&lt; resp.cas().value() &lt;&lt; \"\\n\";\r\n}\r\n\r\ncluster.close().get();<\/pre>\n<h3><span style=\"font-weight: 400;\">Soporte enriquecido para consultas, b\u00fasquedas y b\u00fasquedas vectoriales<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">El SDK de C++ admite <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/sqlpp-queries-with-sdk.html\"><span style=\"font-weight: 400;\">Consultas SQL<\/span><\/a><span style=\"font-weight: 400;\">, <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/concept-docs\/full-text-search-overview.html\"><span style=\"font-weight: 400;\">b\u00fasqueda de texto completo<\/span><\/a><span style=\"font-weight: 400;\"> (FTS), y <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/vector-searching-with-sdk.html\"><span style=\"font-weight: 400;\">b\u00fasqueda vectorial<\/span><\/a><span style=\"font-weight: 400;\">le proporciona potentes herramientas para realizar operaciones de datos complejas. Tanto si necesita ejecutar consultas sofisticadas como realizar b\u00fasquedas de texto completo, el SDK tiene todo lo que necesita.\u00a0<\/span><\/p>\n<h4><span style=\"font-weight: 400;\">B\u00fasqueda de consultas<\/span><\/h4>\n<p><span style=\"font-weight: 400;\">A continuaci\u00f3n se muestra un fragmento de c\u00f3digo para ejecutar un simple <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/sqlpp-queries-with-sdk.html\"><span style=\"font-weight: 400;\">Consulta SQL<\/span><\/a><span style=\"font-weight: 400;\"> para obtener registros de la colecci\u00f3n de aerol\u00edneas:<\/span><\/p>\n<pre class=\"nums:false wrap:true lang:c++ decode:true\">auto scope = cluster.bucket(config.bucket_name).scope(config.scope_name);\r\n\u00a0\u00a0auto [err, resp] = scope.query(\"SELECT * FROM airline LIMIT 10\").get();\r\n\u00a0\u00a0std::cout &lt;&lt; \"--- Iterating as JSON objects:\\n\";\r\n\u00a0\u00a0for (auto row : resp.rows_as_json()) {\r\n\u00a0\u00a0\u00a0\u00a0std::cout &lt;&lt; \"Airline(id: \" &lt;&lt; row[\"airline\"][\"id\"] &lt;&lt; \", name: \\\"\" &lt;&lt; row[\"airline\"][\"name\"] &lt;&lt; \"\\\")\\n\";\r\n\u00a0\u00a0}<\/pre>\n<h4><span style=\"font-weight: 400;\">B\u00fasqueda de texto completo (FTS)<\/span><\/h4>\n<p><span style=\"font-weight: 400;\">A continuaci\u00f3n se muestra un fragmento de c\u00f3digo para ejecutar un <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/concept-docs\/full-text-search-overview.html\"><span style=\"font-weight: 400;\">Consulta FTS<\/span><\/a><span style=\"font-weight: 400;\"> para realizar una b\u00fasqueda de texto completo de \"<em>buenos restaurantes<\/em>\" el \u00edndice creado en la colecci\u00f3n de puntos de referencia:<\/span><\/p>\n<pre class=\"nums:false wrap:true lang:c++ decode:true\">auto scope = cluster.bucket(config.bucket_name).scope(config.scope_name);\r\nauto [err, resp] = scope\r\n\u00a0\u00a0.search(\"travel-inventory-landmarks\",\r\n\u00a0\u00a0\u00a0\u00a0\u00a0couchbase::search_request(couchbase::query_string_query(\"nice restaurants\")),\r\n\u00a0\u00a0\u00a0\u00a0\u00a0couchbase::search_options{}.fields({ \"content\" }))\r\n\u00a0\u00a0.get();\r\nfor (const auto&amp; row : resp.rows()) {\r\n\u00a0\u00a0auto fields = row.fields_as&lt;couchbase::codec::tao_json_serializer&gt;();\r\n\u00a0\u00a0std::cout &lt;&lt; \"score: \" &lt;&lt; row.score() &lt;&lt; \", id: \\\"\" &lt;&lt; row.id() &lt;&lt; \"\\\", content: \\\"\" &lt;&lt; fields[\"content\"].get_string() &lt;&lt; \"\\\"\\n\";\r\n}<\/pre>\n<h4><span style=\"font-weight: 400;\">B\u00fasqueda vectorial<\/span><\/h4>\n<p><span style=\"font-weight: 400;\">A continuaci\u00f3n se muestra un fragmento de c\u00f3digo para ejecutar un <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/vector-searching-with-sdk.html\"><span style=\"font-weight: 400;\">b\u00fasqueda vectorial<\/span><\/a><span style=\"font-weight: 400;\"> consulta:<\/span><\/p>\n<pre class=\"nums:false wrap:true lang:c++ decode:true\">auto scope = cluster.bucket(config.bucket_name).scope(config.scope_name);\r\n\r\n\/\/ weights could be retrieved from your llm model or openAI\r\nstd::vector&lt;double&gt; weights{ 0.1, 0.2, 0.3, 0.4 };\r\nauto [err, resp] = scope\r\n\u00a0\u00a0.search(\"travel-inventory-landmarks\",\r\n\u00a0\u00a0\u00a0\u00a0couchbase::search_request(couchbase::vector_search(\r\n\u00a0\u00a0\u00a0\u00a0couchbase::vector_query(field_name, weights))))\r\n\u00a0\u00a0.get();\r\n\r\nfor (const auto&amp; row : resp.rows()) {\r\n\u00a0\u00a0auto fields = row.fields_as&lt;couchbase::codec::tao_json_serializer&gt;();\r\n\u00a0\u00a0std::cout &lt;&lt; \"score: \" &lt;&lt; row.score() &lt;&lt; \", id: \\\"\" &lt;&lt; row.id() &lt;&lt; \"\\\", content: \\\"\" &lt;&lt; fields[\"content\"].get_string() &lt;&lt; \"\\\"\\n\";\r\n}<\/pre>\n<h3><span style=\"font-weight: 400;\">Programaci\u00f3n as\u00edncrona<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">El SDK admite <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/concurrent-async-apis.html\"><span style=\"font-weight: 400;\">programaci\u00f3n as\u00edncrona<\/span><\/a><span style=\"font-weight: 400;\"> lo que permite crear aplicaciones con capacidad de respuesta y sin bloqueos. Esto es especialmente \u00fatil para aplicaciones de alto rendimiento en las que es esencial mantener la capacidad de respuesta. He aqu\u00ed un ejemplo de ejecuci\u00f3n de una transacci\u00f3n en un contexto as\u00edncrono:<\/span><\/p>\n<pre class=\"nums:false wrap:true lang:c++ decode:true\">std::shared_ptr&lt;async_attempt_context&gt; ctx) -&gt; couchbase::error {\r\n\u00a0\u00a0ctx-&gt;get(\r\n\u00a0\u00a0\u00a0\u00a0collection,\r\n\u00a0\u00a0\u00a0\u00a0some_id,\r\n\u00a0\u00a0\u00a0\u00a0\/\/ do something in this transaction\r\n}<\/pre>\n<h3><span style=\"font-weight: 400;\">Transacciones<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Este nuevo SDK de C++ incluye compatibilidad con <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/distributed-acid-transactions-from-the-sdk.html\"><span style=\"font-weight: 400;\">transacciones<\/span><\/a><span style=\"font-weight: 400;\"> y reemplaza nuestro soporte de transacciones C++ existente a\u00f1adiendo m\u00e1s mejoras de rendimiento y caracter\u00edsticas. A continuaci\u00f3n se muestra un fragmento de c\u00f3digo de ejemplo para crear un contexto de transacci\u00f3n:<\/span><\/p>\n<pre class=\"nums:false wrap:true lang:c++ decode:true\">std::shared_ptr&lt;couchbase::transactions::attempt_context&gt; ctx) -&gt; couchbase::error {\r\n  ctx.insert(collection, \"doc-a\", nlohmann::json({}));\r\n\u00a0\u00a0couchbase::transactions::transaction_get_result doc_a = ctx-&gt;get( collection, \u201cdoc-a\u201d)\r\n}<\/pre>\n<h3><span style=\"font-weight: 400;\">Gesti\u00f3n de errores robusta<\/span><\/h3>\n<p><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/error-handling.html\"><span style=\"font-weight: 400;\">Tratamiento de errores<\/span><\/a><span style=\"font-weight: 400;\"> es crucial en cualquier aplicaci\u00f3n, y el SDK de C++, al igual que nuestros otros SDK, proporciona funciones completas de gesti\u00f3n de errores, como reintentos en caso de ca\u00edda de la conexi\u00f3n, agrupaci\u00f3n de conexiones y mensajes de error informativos. De este modo, podr\u00e1 gestionar los errores con elegancia y recuperarse de ellos, mejorando la estabilidad y fiabilidad de sus aplicaciones.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Primeros pasos<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Para ayudarte a empezar con el SDK de C++ para Couchbase, hemos preparado una detallada gu\u00eda de inicio en nuestro sitio web de documentaci\u00f3n. Aqu\u00ed tienes un resumen r\u00e1pido de c\u00f3mo empezar:<\/span><\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li><span style=\"font-weight: 400;\"><strong>Instalar el SDK<\/strong>: Siga las instrucciones de instalaci\u00f3n de la documentaci\u00f3n para configurar el SDK en su entorno de desarrollo.<\/span><\/li>\n<li><span style=\"font-weight: 400;\"><strong>Con\u00e9ctese a su cl\u00faster<\/strong>: Con\u00e9ctese a su cl\u00faster Couchbase.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Realice <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/kv-operations.html\"><span style=\"font-weight: 400;\">Operaciones CRUD<\/span><\/a><span style=\"font-weight: 400;\">, <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/howtos\/sqlpp-queries-with-sdk.html\"><span style=\"font-weight: 400;\">ejecutar consultas<\/span><\/a><span style=\"font-weight: 400;\">y aprovechando las potentes funciones de Couchbase.<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2><span style=\"font-weight: 400;\">Comunidad y apoyo<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Creemos en el poder de la comunidad y el desarrollo de c\u00f3digo abierto. El SDK de C++ para Couchbase <\/span><a href=\"https:\/\/github.com\/couchbase\/couchbase-cxx-client\"><span style=\"font-weight: 400;\">es de c\u00f3digo abierto<\/span><\/a><span style=\"font-weight: 400;\">y le animamos a que contribuya, aporte sus comentarios y se una a la conversaci\u00f3n. Para obtener asistencia, si es cliente con licencia para empresas, puede ponerse en contacto con nosotros a trav\u00e9s del servicio de asistencia. <\/span><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/hello-world\/start-using-sdk.html\"><span style=\"font-weight: 400;\">documentaci\u00f3n<\/span><\/a><span style=\"font-weight: 400;\">\u00fanete al <\/span><a href=\"https:\/\/www.couchbase.com\/blog\/es\/forums\/\"><span style=\"font-weight: 400;\">Foros de Couchbase<\/span><\/a><span style=\"font-weight: 400;\"> o <\/span><a href=\"https:\/\/discord.com\/invite\/K7NPMPGrPk\"><span style=\"font-weight: 400;\">Couchbase Discord<\/span><\/a><span style=\"font-weight: 400;\">o a trav\u00e9s de nuestro <\/span><a href=\"https:\/\/support.couchbase.com\/hc\/en-us\"><span style=\"font-weight: 400;\">portal de asistencia<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Lecturas complementarias<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Para obtener m\u00e1s informaci\u00f3n, consulte nuestro sitio web de documentaci\u00f3n. En ella encontrar\u00e1s m\u00e1s informaci\u00f3n sobre la API, especialmente sobre transacciones y operaciones as\u00edncronas, as\u00ed como material de referencia y enlaces a enlaces de ejemplo para que puedas profundizar en el tema:<\/span><\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/github.com\/couchbase\/couchbase-cxx-client\/tree\/main\/examples\"><span style=\"font-weight: 400;\">Ejemplos de c\u00f3digo Couchbase C++ SDK<\/span><\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/hello-world\/start-using-sdk.html\"><span style=\"font-weight: 400;\">Documentaci\u00f3n del SDK C++ de Couchbase<\/span><\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/github.com\/couchbase\/couchbase-cxx-client\"><span style=\"font-weight: 400;\">Descargar e instalar Couchbase C++ SDK<\/span><\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><a href=\"https:\/\/docs.couchbase.com\/cxx-sdk\/current\/project-docs\/compatibility.html\"><span style=\"font-weight: 400;\">Sistemas operativos compatibles<\/span><\/a><span style=\"font-weight: 400;\"> figuran en nuestro sitio web de documentaci\u00f3n.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a1Feliz codificaci\u00f3n!<\/span><\/p>\n<p><span style=\"font-weight: 400;\">El equipo de Couchbase<\/span><\/p>\n<p><br style=\"font-weight: 400;\" \/><br style=\"font-weight: 400;\" \/><\/p>","protected":false},"excerpt":{"rendered":"<p>We are thrilled to announce the General Availability (GA) of the C++ SDK for Couchbase! This release adds support for native C++ language to our existing comprehensive set of SDK libraries in 11 programming languages and marks a significant milestone [&hellip;]<\/p>","protected":false},"author":25,"featured_media":15986,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[9986,2165,2201,9937],"tags":[9549],"ppma_author":[8995,9987],"class_list":["post-15985","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-c","category-full-text-search","category-tools-sdks","category-vector-search","tag-crud"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Announcing General Availability of the C++ SDK for Couchbase<\/title>\n<meta name=\"description\" content=\"This release adds support for native C++ language to our existing comprehensive set of SDK libraries in 11 programming languages and marks a significant milestone\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/es\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Announcing General Availability of the C++ SDK for Couchbase\" \/>\n<meta property=\"og:description\" content=\"This release adds support for native C++ language to our existing comprehensive set of SDK libraries in 11 programming languages and marks a significant milestone\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-01T15:00:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T04:07:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2400\" \/>\n\t<meta property=\"og:image:height\" content=\"1256\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Sergey Avseyev, SDK Engineer, Couchbase, Vishal Dhiman, Sr. Product Manager\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@avsej\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sergey Avseyev, SDK Engineer, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/\"},\"author\":{\"name\":\"Sergey Avseyev, SDK Engineer, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/e9181374f225c90084ec3ba86bdcfa2e\"},\"headline\":\"Announcing General Availability of the C++ SDK for Couchbase\",\"datePublished\":\"2024-07-01T15:00:48+00:00\",\"dateModified\":\"2025-06-14T04:07:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/\"},\"wordCount\":855,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png\",\"keywords\":[\"CRUD\"],\"articleSection\":[\"C\/C++\",\"Full-Text Search\",\"Tools &amp; SDKs\",\"Vector Search\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/\",\"name\":\"Announcing General Availability of the C++ SDK for Couchbase\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png\",\"datePublished\":\"2024-07-01T15:00:48+00:00\",\"dateModified\":\"2025-06-14T04:07:20+00:00\",\"description\":\"This release adds support for native C++ language to our existing comprehensive set of SDK libraries in 11 programming languages and marks a significant milestone\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png\",\"width\":2400,\"height\":1256},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Announcing General Availability of the C++ SDK for Couchbase\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/e9181374f225c90084ec3ba86bdcfa2e\",\"name\":\"Sergey Avseyev, SDK Engineer, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/796ab283bd56fe3716a102ebe16daff6\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g\",\"caption\":\"Sergey Avseyev, SDK Engineer, Couchbase\"},\"description\":\"Sergey Avseyev is a SDK Engineer at Couchbase. Sergey Avseyev is responsible for development of Kafka connector, and underlying library, which implements DCP, Couchbase replication protocol. Also maintaining PHP SDK for Couchbase.\",\"sameAs\":[\"https:\/\/x.com\/avsej\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/sergey-avseyev\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Disponibilidad general del SDK de C++ para Couchbase","description":"This release adds support for native C++ language to our existing comprehensive set of SDK libraries in 11 programming languages and marks a significant milestone","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/es\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/","og_locale":"es_MX","og_type":"article","og_title":"Announcing General Availability of the C++ SDK for Couchbase","og_description":"This release adds support for native C++ language to our existing comprehensive set of SDK libraries in 11 programming languages and marks a significant milestone","og_url":"https:\/\/www.couchbase.com\/blog\/es\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/","og_site_name":"The Couchbase Blog","article_published_time":"2024-07-01T15:00:48+00:00","article_modified_time":"2025-06-14T04:07:20+00:00","og_image":[{"width":2400,"height":1256,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png","type":"image\/png"}],"author":"Sergey Avseyev, SDK Engineer, Couchbase, Vishal Dhiman, Sr. Product Manager","twitter_card":"summary_large_image","twitter_creator":"@avsej","twitter_misc":{"Written by":"Sergey Avseyev, SDK Engineer, Couchbase","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/"},"author":{"name":"Sergey Avseyev, SDK Engineer, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/e9181374f225c90084ec3ba86bdcfa2e"},"headline":"Announcing General Availability of the C++ SDK for Couchbase","datePublished":"2024-07-01T15:00:48+00:00","dateModified":"2025-06-14T04:07:20+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/"},"wordCount":855,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png","keywords":["CRUD"],"articleSection":["C\/C++","Full-Text Search","Tools &amp; SDKs","Vector Search"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/","url":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/","name":"Disponibilidad general del SDK de C++ para Couchbase","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png","datePublished":"2024-07-01T15:00:48+00:00","dateModified":"2025-06-14T04:07:20+00:00","description":"This release adds support for native C++ language to our existing comprehensive set of SDK libraries in 11 programming languages and marks a significant milestone","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/blog-cpp-sdk.png","width":2400,"height":1256},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/announcing-general-availability-of-the-cpp-sdk-for-couchbase\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Announcing General Availability of the C++ SDK for Couchbase"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"El blog de Couchbase","description":"Couchbase, la base de datos NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"El blog de Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/e9181374f225c90084ec3ba86bdcfa2e","name":"Sergey Avseyev, Ingeniero SDK, Couchbase","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/796ab283bd56fe3716a102ebe16daff6","url":"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g","caption":"Sergey Avseyev, SDK Engineer, Couchbase"},"description":"Sergey Avseyev es Ingeniero SDK en Couchbase. Sergey Avseyev es responsable del desarrollo del conector Kafka, y la biblioteca subyacente, que implementa DCP, el protocolo de replicaci\u00f3n de Couchbase. Tambi\u00e9n mantiene PHP SDK para Couchbase.","sameAs":["https:\/\/x.com\/avsej"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/sergey-avseyev\/"}]}},"authors":[{"term_id":8995,"user_id":25,"is_guest":0,"slug":"sergey-avseyev","display_name":"Sergey Avseyev, SDK Engineer, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g","first_name":"Sergey","last_name":"Avseyev, SDK Engineer, Couchbase","user_url":"","author_category":"","description":"Sergey Avseyev es Ingeniero SDK en Couchbase. Sergey Avseyev es responsable del desarrollo del conector Kafka, y la biblioteca subyacente, que implementa DCP, el protocolo de replicaci\u00f3n de Couchbase. Tambi\u00e9n mantiene PHP SDK para Couchbase."},{"term_id":9987,"user_id":85357,"is_guest":0,"slug":"vishald","display_name":"Vishal Dhiman, Sr. Product Manager","avatar_url":{"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/09\/vishal-dhiman-couchbase.jpg","url2x":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/09\/vishal-dhiman-couchbase.jpg"},"first_name":"Vishal","last_name":"Dhiman, Sr. Product Manager","user_url":"","author_category":"","description":""}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/15985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/users\/25"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=15985"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/15985\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/15986"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=15985"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=15985"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=15985"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=15985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}