Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
C++ MIX #11 これどう読むの...?
Search
Nobuyuki Nishiyama
June 15, 2024
Programming
0
330
C++ MIX #11 これどう読むの...?
C++ MIX #11 で発表したスライドです!
https://cppmix.connpass.com/event/319167/
Nobuyuki Nishiyama
June 15, 2024
Tweet
Share
More Decks by Nobuyuki Nishiyama
See All by Nobuyuki Nishiyama
ゲーム音楽が好きすぎて実機から録音したけど需要ありますか?
5mingame2
2
700
正規表現苦手なんです...
5mingame2
1
520
コントロールセンターとたたかう
5mingame2
2
2.2k
OpenGLを試すなら
5mingame2
0
580
課金処理とたたかう.pdf
5mingame2
1
770
Emacs meets Vim
5mingame2
1
690
タッチジェスチャーとたたかう
5mingame2
4
700
教えて!Xcode
5mingame2
4
1.6k
つかおう!滑らか移動
5mingame2
0
530
Other Decks in Programming
See All in Programming
Jakarta EE meets AI
ivargrimstad
0
230
rails stats で紐解く ANDPAD のイマを支える技術たち
andpad
1
290
快速入門可觀測性
blueswen
0
330
急成長期の品質とスピードを両立するフロントエンド技術基盤
soarteclab
0
920
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
120
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
180
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
660
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
250
CSC305 Lecture 25
javiergs
PRO
0
130
MCP with Cloudflare Workers
yusukebe
2
220
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Facilitating Awesome Meetings
lara
50
6.1k
KATA
mclloyd
29
14k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Building an army of robots
kneath
302
44k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Into the Great Unknown - MozCon
thekraken
33
1.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Side Projects
sachag
452
42k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Adopting Sorbet at Scale
ufuk
73
9.1k
Transcript
$ .*9 ͜ΕͲ͏ಡΉͷʜʁ ΅ͬͪήʔϜσϕϩού ࢁ৴ߦ
͜ͱͷൃ
w"464ϒϥϯυωʔϜͷ༝དྷ w ܳज़ֶʹ͓͚ΔΠϯεϐϨʔγϣϯͷͱͳ͍ͬͯΔΪϦ γϟਆͷۭඈͿനഅlϖΨαε‧1FHBTVTzɻ͜ͷ࠷ޙͷ࢛จࣈ ͕"464ͷ༝དྷͰ͢ɻʮͯ͢ͷʹߴ͍࣭ͱಠੑΛਧ͖ ࠐΉ͜ͱʹΑΓɺػʹΉϖΨαε͕͢Δڧ͞ɺੑɺ ७ਮ͞Λ۩ମతʹ࣮ݱ͢Δʯͱ͍͏ҙຯ͕ࠐΊΒΕ͍ͯ·͢ɻ· ͨɺ݄ΑΓ"464ʮΤΠεʔεʯͱൃԻ͕౷Ұ͞ Ε·ͨ͠ɻ w
IUUQTXXXBTVTDPNKQ"CPVU@"464BCPVU@BTVT@IJTUPSZ@OBNF ͜Μͳͷ͋ͬͨ
͜Μͳͷʂ υΠπޠ ӳޠ WFDUPS ϕΫτϧ ϕΫλʔ Q) ϖʔϋʔ ϐʔΤΠν #.8
ϕʔΤϜϰΣʔ ϏʔΤϜμϒϦϡʔ
wීஈͳΜͱͳ͘ݺশ͍ͯ͠Δݴ༿Λॳֶऀͦ ͷ··͍͍͑ͯͷ͔͠Βʜ🧐 ՝ൃੜʂ
Ͱຊฤ࢝·Γ·͢
w ϓϩάϥϜΛॻ͖࢝ΊΔʹ·ͣ(BNFTMOΛ։͘ w (BNFTMOϑΝΠϧ(BNFWDYQSPKΛؚΜͰ͍·͢ w Ϗϧυ͕ޭ͢Δͱ(BNFFYF͕ग़ྗ͞Ε·͢ ̍
w ϓϩάϥϜΛॻ͖࢝ΊΔʹ·ͣ(BNFTMOΛ։͘ w (BNFTMOϑΝΠϧ(BNFWDYQSPKΛؚΜͰ͍·͢ w Ϗϧυ͕ޭ͢Δͱ(BNFFYF͕ग़ྗ͞Ε·͢ ̍
w$ ͷίϯύΠϧʹ(/6ͷ($$$MBOHΛ ͍·͢ɻ·ͨόʔδϣϯཧʹHJUΛ͍·͢ ͷͰ֤ࣗͷ1$ʹΠϯετʔϧ͓͍ͯͯͩ͘͠͞ ͍ɻ-JOVYͳΒBQUJOTUBMMͰΠϯετʔϧ͠·͢ ̎
w$ ͷίϯύΠϧʹ(/6ͷ($$$MBOHΛ ͍·͢ɻ·ͨόʔδϣϯཧʹHJUΛ͍·͢ ͷͰ֤ࣗͷ1$ʹΠϯετʔϧ͓͍ͯͯͩ͘͠͞ ͍ɻ-JOVYͳΒBQUJOTUBMMͰΠϯετʔϧ͠·͢ ̎
̏ #include <malloc.h> int main(int argc, char *argv[]) { if
(argc > 0 && !p) { int a = argc < 10 ? -1 * 2 : 1 & 2; } void *p = malloc(100); }
̏ #include <malloc.h> int main(int argc, char *argv[]) { if
(argc > 0 && !p) { int a = argc < 10 ? -1 * 2 : 1 & 2; } void *p = malloc(100); }
̏ #include <malloc.h> int main(int argc, char *argv[]) { if
(argc > 0 && !p) { int a = argc < 10 ? -1 * 2 : 1 & 2; } void *p = malloc(100); }
̏ #include <malloc.h> int main(int argc, char *argv[]) { if
(argc > 0 && !p) { int a = argc < 10 ? -1 * 2 : 1 & 2; } void *p = malloc(100); }
̏ #include <malloc.h> int main(int argc, char *argv[]) { if
(argc > 0 && !p) { int a = argc < 10 ? -1 * 2 : 1 & 2; } void *p = malloc(100); }
̏ #include <malloc.h> int main(int argc, char *argv[]) { if
(argc > 0 && !p) { int a = argc < 10 ? -1 * 2 : 1 & 2; } void *p = malloc(100); }
̏ #include <malloc.h> int main(int argc, char *argv[]) { if
(argc > 0 && !p) { int a = argc < 10 ? -1 * 2 : 1 & 2; } void *p = malloc(100); }
̐ struct Hoge { int x, y; }; int main()
{ Hoge v; v.x = 0; v.y = 0; }
̐ struct Hoge { int x, y; }; int main()
{ Hoge v; v.x = 0; v.y = 0; }
̐ struct Hoge { int x, y; }; int main()
{ Hoge v; v.x = 0; v.y = 0; }
̑ #include <iostream> constexpr int square(int x) { return x
* x; } int main() { int i = 0 | 2; int& h = (i / 2) << 2; if (i > 0 || h > 0) { std::cout << "Hoge\n"; } }
̑ #include <iostream> constexpr int square(int x) { return x
* x; } int main() { int i = 0 | 2; int& h = (i / 2) << 2; if (i > 0 || h > 0) { std::cout << "Hoge\n"; } }
̑ #include <iostream> constexpr int square(int x) { return x
* x; } int main() { int i = 0 | 2; int& h = (i / 2) << 2; if (i > 0 || h > 0) { std::cout << "Hoge\n"; } }
̑ #include <iostream> constexpr int square(int x) { return x
* x; } int main() { int i = 0 | 2; int& h = (i / 2) << 2; if (i > 0 || h > 0) { std::cout << "Hoge\n"; } }
̑ #include <iostream> constexpr int square(int x) { return x
* x; } int main() { int i = 0 | 2; int& h = (i / 2) << 2; if (i > 0 || h > 0) { std::cout << "Hoge\n"; } }
̑ #include <iostream> constexpr int square(int x) { return x
* x; } int main() { int i = 0 | 2; int& h = (i / 2) << 2; if (i > 0 || h > 0) { std::cout << "Hoge\n"; } }
̒ #include <string> #include <iostream> int main() { auto s
= std::string{"Hoge"}; auto c = s[1]; printf("%s", s.c_str()); std::cout << s.substr(1, 2); }
̒ #include <string> #include <iostream> int main() { auto s
= std::string{"Hoge"}; auto c = s[1]; printf("%s", s.c_str()); std::cout << s.substr(1, 2); }
̒ #include <string> #include <iostream> int main() { auto s
= std::string{"Hoge"}; auto c = s[1]; printf("%s", s.c_str()); std::cout << s.substr(1, 2); }
̒ #include <string> #include <iostream> int main() { auto s
= std::string{"Hoge"}; auto c = s[1]; printf("%s", s.c_str()); std::cout << s.substr(1, 2); }
̒ #include <string> #include <iostream> int main() { auto s
= std::string{"Hoge"}; auto c = s[1]; printf("%s", s.c_str()); std::cout << s.substr(1, 2); }
wIUUQTRJJUBDPNIEBZJUFNT GCECFE ಉ͡ΈΛ࣋ͭਓ
wจࣈใΛԻಡͰ͑Δͷ͍͠ʂ wΒจࣈใΛൃԻͰ͖ͣͱೝ͍ࣝͯ͠ Δʜͷʜʁ 㵺wТw㵺 ŇPஇ Ҏ্Ͱ͢ʂʂ