タグ

C++に関するSystemのブックマーク (25)

  • jank is C++

    If you've wondered how much a solo dev can build for seamless C++ interop on a quarter, you're about to find out. In April, jank was unable to reach into C++ at all. Toward the end of this post, I'll show some real world examples of what works today. Before that, though, I want to say thank you for the sponsorship this quarter, not only by all of my individual Github sponsors, but also by Clojuris

    jank is C++
  • C++とOpenSSLライブラリを利用してデータの暗号化・復号化をAES-CBCで行う - バージョン管理された人

    C++でまともに暗号化・復号化するサンプルをやっている例を見ないので書く。 実際にはsaltがどうだとかパディングがどうだとかストレッチングがどうだとか暗号化する前にデータを圧縮する話だとかは出さない。 運用上は重要だけど、そういうのは後付けできる。 問題はOpenSSLをC++でまともにあつかう例がない方なので、ここではこのはなしをざっくり切ってどのように記述するのかを解説していく。 方針 OpenSSLライブラリを利用する小さなAES-CBCモードに限定したopensslコマンドを実装する。 小さいといっても興が乗って300行程になってしまったが、問題はないだろう。 実際に重要なところは合わせても100行も行かない。 また、ここではC++17前提で実装を進める。 それ以前のC++を利用する方は適宜読み替えて欲しい。 ただ、OpenSSLのライブラリはCで書かれているので、中核となる部分

    C++とOpenSSLライブラリを利用してデータの暗号化・復号化をAES-CBCで行う - バージョン管理された人
  • [翻訳]なぜそんなに確信が持てるのか? - 地面を見下ろす少年の足蹴にされる私

    前書き この記事はC++標準化委員会の2019年12月公開の論文の1つ、Bjarne Stroustrupさんが書かれた「P1962R0 How can you be so certain?」という論文の和訳です。 この文章はC++標準化委員会における機能追加時の議論を念頭において、C++標準化委員会メンバーに向けて書かれています。したがって、読むにあたってはC++の機能などについてある程度知っている必要があるかと思います。 私の英語力はひよこ以下なので訳の正確性には全く保証がありません。特に、細部のニュアンスの解釈は大いに間違っている可能性があります(修正してやる!という方がいましたら、この記事のMarkdownソースからお願いします)。 以下の方に修正を賜りました k-satodaさん なお、翻訳の公開についてBjarne Stroustrupさんに連絡を取った所、問題ないとのお返事を

    [翻訳]なぜそんなに確信が持てるのか? - 地面を見下ろす少年の足蹴にされる私
  • 2024年に特にお世話になったC++ライブラリ8選 - Qiita

    今年も一番お世話になったライブラリです。 もう「メジャーなライブラリ」といっても良い気がしています。 Partial Read/Writeによる柔軟な読み書き、JSON-RPCやJMESPathへの対応など沢山の機能が追加され、更なる高速化も達成されています。 良い点 Partial ReadやCustom Read Functionsで柔軟なフィールドの読み込みができる 構造体やクラスだけでなくSTLコンテナもJSONとの直接読み書きができる 中間データに独自バイナリ形式を利用してさらに高速化できる いまいちな点 AVX512が使える環境だとsimdjsonより30%ぐらい遅い 最後のフィールドのカンマやコメントなど特殊なJSONには対応していない version 3.0.0以降はC++23が必要になった 代替ライブラリ 個人的にRyzen7 7700を使うようになってAVX512がまが

    2024年に特にお世話になったC++ライブラリ8選 - Qiita
  • return文におけるstd::moveについて

    return文でstd::moveをいつ使うべきかとその理由を完全理解してください💪

    return文におけるstd::moveについて
    System
    System 2024/12/21
  • 【C++】C++20のモジュールとincludeの違いについて詳しく調べてみた

    こんにちは。情熱開発部プログラム課の安田です。 Visual Studioはじめ、各種C++コンパイラのC++20対応が着々と進む中、CEDEC2020でC++20の機能を紹介する講演が実施されるなど、ゲーム業界でもC++20導入の機運が高まっています。今回はC++20の新機能の中でも、個人的に特に気になっていた「モジュール」について紹介します。 1. C++20のモジュールとは? 2. C++のビルドの仕組み 3. 複数ファイルからなるプログラムのビルド 4. #includeを使う上での注意点 5. 改めてモジュールの利点を考えてみる 6. モジュールを試してみる 7. おわりに 参考資料 1. C++20のモジュールとは? モジュールとは、C++20で新たに導入される、 インクルードに代わる新たなプログラム分割の仕組みのことです。 cpprefjpによると、C++にモジュールが必要に

    【C++】C++20のモジュールとincludeの違いについて詳しく調べてみた
    System
    System 2020/11/18
  • Programming Place Plus

    Programming Place Plus へようこそ。 当サイトはプログラミングに関する学習サイトで、現在はC言語と C++ を扱っています。 プログラミングの入門~中級(自分でプログラミングできるレベル)までをサポートすることを目指して、コンテンツを作成、更新しています。 最近行われた更新を、ここから確認できます。 お知らせ 🔗 2026/5/2 ファイルダウンロードのページに、主要コンテンツの文を1ファイルにまとめたプレーンテキスト版を追加しました。NotebookLM のソースとして追加できます 2025/1/22 「今後の予定」を更新しました コンテンツ 🔗 Programming Place Plus のコンテンツです。最近行われた更新はこちら。 以下の検索窓から、すべてのコンテンツを検索できます。

    Programming Place Plus
  • 江添亮のC++入門

    書はプログラミングの経験はあるがC++は知らない読者を対象にしたC++を学ぶためのである。書はすでに学んだことのみを使って次の知識を説明する手法で書かれた。C++コンパイラーをC++で書く場合、C++コンパイラーのソースコードをコンパイルする最初のC++コンパイラーをどうするかというブートストラップ問題がある。書はいわばC++における知識のブートストラップを目指しただ。これにより読者はを先頭から読んでいけば、まだ学んでいない概念が突如として無説明のまま使われて混乱することなく読み進むことができるだろう。 C++知識のブートストラップを意識した入門書の執筆はなかなかに難しかった。ある機能Xを教えたいが、そのためには機能Yを知っていなければならず、機能Yを理解するためには機能Zの理解が必要といった具合に、C++の機能の依存関係の解決をしなければならなかったからだ。著者自身も苦し

    System
    System 2020/09/27
  • Blog

    In today’s rapidly evolving digital landscape, businesses need platforms that are not only robust and scalable but also intelligent and adaptable. The Wippy Platform, built upon the high-performance Wippy Runtime, is a groundbreaking system designed to empower developers and organizations to build, deploy, and manage sophisticated, AI-integrated applications with unprecedented speed and flexibilit

    Blog
  • スポンサーサイト | プログラマーズ雑記帳

    C# の LINQ、Java の Stream のように「関数型のデータ処理」が多くの言語で取り入れられてきています。 そんな中、C++11,14 での機能追加によって、 C++ でもとうとう Steams ライブラリーを使えば、それができるようになりました。 そこで今回はこの関数型のデータ処理の魅力と Streams の使い方について紹介したいと思います。 C++ Streams 関数型データ処理の魅力 関数型データ処理の何が素晴らしいのかを端的にいえば、従来よりもコードを短くかつわかりやすく記述することができることです。 範囲 for の魅力 C++11 では 範囲に基づく for 文 という機能も追加されました。 関数型データ処理の良さの説明のために、まず「範囲 for 」の良さを見てみます。 例えば、 STL コンテナーの各要素に対して、何か処理をする場合、 vector であれば

    System
    System 2020/09/23
  • Runnable - Discover Everything through Code

    We’re thrilled to announce the Runnable team is joining MuleSoft. This is an incredible opportunity for us to expand our vision of empowering developers to test changes without the infrastructure bottleneck; we couldn’t be more excited to work with MuleSoft to continue our journey. As apart of this transition, we’re shutting down service for all Runnable accounts. To those we had the joy of servin

  • Runnable Joins the MuleSoft Family

    We’re thrilled to announce the Runnable team is joining MuleSoft. This is an incredible opportunity for us to expand our vision of empowering developers to test changes without the infrastructure bottleneck; we couldn’t be more excited to work with MuleSoft to continue our journey. As apart of this transition, we’re shutting down service for all Runnable accounts. To those we had the joy of servin

    Runnable Joins the MuleSoft Family
  • Deep C

    The document discusses the complexities of programming in C and C++, emphasizing that many programmers lack a deep understanding of the language, which leads to common errors. It uses code snippets to explore basic principles, limitations, and specific requirements of these languages, such as the necessity of including specific headers and explicit declarations. Interviewing candidates for C progr

    Deep C
  • Qt – クロスプラットフォームのユーザーインターフェース開発フレームワーク — Qt - A cross-platform application and UI framework

    2009年12月14日  - "参加登録は、12月6日をもちまして締め切らせて頂きます。" Register now! Other new items: NEW! Qt 4.6 & Qt Creator 1.3 Betas with Symbian support NEW!  Qt for Maemo 5 Tech PreviewNEW! 最新の Qt ロードマップ "当社はこれまで以上に“多彩な”アプリケーションをユーザーに提供することができます。ノキアによる、Qtクロスプラットフォームライブラリ及びLinuxプラットフォームへの継続的な投資は、フリーソフトウェアデスクトップ及びモバイルデバイス向けスタックの開発を促す原動力になっています。" “Qt  は革新的で有効な技術で、それに含まれる QtWebKit は強力なクロスプラットフォームのWeb体験を提供し、それにより我々の

  • Quoraを支える技術 - nokunoの日記

    勉強になる記事を見つけたので気になったところを翻訳してみました。Quora’s Technology Examined | Phil Whelan's Blog はじめにQuoraはハイテク起業家の世界を体現しており、問題を見つけるのが難しいほどなめらかなシステムを提供している。この巧妙なシステムは回答者と質問者だけに支えられているわけではなく、よく練られたバックエンドシステムによっても支えられている。それは共同創業者がFacebookで磨きをかけた技術でもある。さほど驚くべきことでもなく、賢い人々は良く考えられたたくさんの賢い道具を使う。NoSQL信者たちはこう言って頭をかかえる:「なぜQuoraはCassandraやMongoDBやCouchDBのようなNoSQLではなく、MySQLをデータストアとして使うのか?」このエントリではQuoraについての技術的な情報をまとめ、考察を行う。彼

  • フェイスブックの作ったオープンソース色々:phpspot開発日誌

    公開初日に早速フェイスブックの映画、ソーシャルネットワークを見てきました。 サービスを作ってる人は、\1,800はらうだけでやる気を200%ぐらいにしてくれる映画だと思うので費用対効果は安いと思います。 映画の中で、ハーバード大学は2時間で22000アクセスのトラフィックを集めただけで落ちちゃうの?とかナップスターの作者さん遊び上手すぎじゃない?とか、新機能の実装に家かえってから1、2分とか早すぎない?等の、ツッコミどころなんかも楽しめます。 映画の中ではコーディングに関することは殆ど出てこなかったわけなんですが、膨大なトラフィックをさばくためにfacebook自体、多くのオープンソースを公開しているのでdevelopers.facebook.comから紹介してみます。 もうすぐ6億人に届くほどのユーザを扱うためには、想像を絶するインフラや高速化、サーバ間連携の仕組みが必要になるわけですが

  • node.js のソースぐらい読んでおきたい! - by edvakf in hatena

    JavaScript Advent Calendar 2010 という企画をやっています。既にもう7日目なのですが、まだまだ os0x さんや hasegawayosuke さんや nanto_vi さんや secondlife さんといったすごい方々が記事を書いてくれる予定になっていますので、是非チェックしてみてください。 今日は、最近話題の node.js を読んでみます。僕自身は node.js を追っかけてたのは今年の5月ぐらいで、ソースは半年以上見てなかったのですが、この機会にまた読みました。この記事は、C++ は一応読めるけど V8 とか libev はあまり知らない node.js 好きの人を念頭に置いています。 拙訳の Embedder's Guide - V8 JavaScript Engine に書いてあるようなことは説明なしでいきたいと思います。また、適宜 libev

    node.js のソースぐらい読んでおきたい! - by edvakf in hatena
  • HipHopのビルドとインストール方法(和訳) : candycane development blog

    ソースコードがついに公開されたHipHop for PHPのビルドとインストール方法のドキュメントの和訳を作成しました。CentOSかFedoraの環境をお持ちの方は早速ビルドに挑戦してみてはいかがでしょうか。利用法のドキュメントの和訳は引き続きアップします。 PHPC++に変換して高速化する「HipHop for PHP」をFacebookが公開 HipHopのビルドとインストール方法(和訳) 原文 http://wiki.github.com/facebook/hiphop-php/building-and-installing ビルドとインストール HipHopはCentOSとFedora向けに開発されており、他のオペレーティングシステム上でのビルドは現在のところ機能しません。他のオペレーティングシステム向けのサポートは準備ができ次第追加されます。 前提条件 HipHopの前提条件

  • 並列イベント駆動I/Oフレームワーク「mpio」リリース - Blog by Sadayuki Furuhashi

    分散KVS kumofs のコードは、全体で約2万行です*1。 そのうち、ネットワークI/Oやプロトコルに関するコードは約1万行*2で、全体の約半分を占めています。 ロジックは残りの半分*3だけで実装されています。 この実例から分かりますが、kumofsのような分散アプリケーションを開発するにはI/O周りの実装が大変で、とてつもなく大きな障壁になっています。*4 さらに今日では、性能を稼ぐためにマルチスレッド化が必須です。また、多数のクライアントを少ないリソースで効率よく相手にするには、非同期・イベント駆動型のアーキテクチャも必要になります。さらに、究極的な性能を達成すべく GC を利用しない C++ においては、実装のみならず設計も大変です。 これに加えてソケットAPIの難解な挙動に対処にしなければならないため、C言語やC++によるネットワークプログラミングは、vimの使いこなしなどと同

    並列イベント駆動I/Oフレームワーク「mpio」リリース - Blog by Sadayuki Furuhashi
  • PHPをC++に変換して高速化する「HipHop for PHP」をFacebookが公開 : candycane development blog

    アメリカ時間の昼ごろにTwitter上が一つのニュースで埋め尽くされました。 PHPC++に変換して高速化する技術をFacebookが公開したというものです。世界中のPHPハッカーが注目する興味深いリリースという事でちょっと長いですが、リリースノートの和訳を行いました。 原文 http://developers.facebook.com/news.php?blog=1&story=358 Facebookにおいて重要なことのひとつが動作の速さです。過去6年間にわたって、PHPが提供する高速な開発ペースによって多くを成し遂げてきました。プログラミング言語としてみると、PHPはシンプルです。簡単に習得し、簡単に書き、簡単に読み、簡単にデバッグする事ができます。我々は他の言語よりも早くエンジニアを獲得し、それによってより早いイノベーションをすることができます。 今日、私は2年に渡って作業して