N4127 Checked-dereference conditions ãã¤ã³ã¿æä½ã§ã¯ã以ä¸ã®ããã«ãéæ¥åç §å¯è½ã(æå¹ãªå¤ãæããã¤ã³ã¿ã)ãããã§ãã¯ãã¦ããéæ¥åç §ãããã¨ããã®ãããè¡ããã¾ãã if (p) { T x = *p; } ããã以ä¸ã®ããã«æ¸ããããã«ããããã¨ããã®ããã®ææ¡ã if (T x : p) { } ã¤ã¾ããéæ¥åç §ãã§ãããªãéæ¥åç §ããã¦å¤ãåãåºããã¾ã§ãä¸ã¤ã®ifæã§ãã£ã¦ãã¾ããã¨ãããã®ã§ãã ããã¯ãå¤ã®å¤å®ã¨åãåºããåæã«è¡ãããããã ãªãã¿ã¼ã³ãããã¨è¦ãªããã¨ãã§ãã¾ãã ãã®æ©è½ã¯ãå¤ãã®ç¶æ³ã§ä¾¿å©ã«æ´»ç¨ã§ãã¾ãã weak_ptrã®å ´å weak_ptrã¯ãlock()ã¡ã³ãé¢æ°ã使ç¨ãã¦shared_ptrãªãã¸ã§ã¯ããåãåºãã¾ãããã®éã以ä¸ã®ãããªã³ã¼ããæ¸ããã¨ã«ãªãã¾ããã if (shared_ptr<T>
[Ruby]æ¶è²»ç¨è¨ç®ã«ã¯BigDecimalã使ãã¾ããã å¤åé·æ¼ç®10é²æ°åã§æ¼ç®ãè¡ãã°ãæµ®åå°æ°ç¹æ°ã®èª¤å·®ããªããªãã¨ãã話ãC++ã®å¤åé·æ¼ç®ã©ã¤ãã©ãªã§ããBoost.Multiprecisionã¯ç¡èª¤å·®ã§ããã¨ããããã¥ã¡ã³ãä¸ã®è¦å®ã¯ã¨ãã«ãªãã®ã§ãããå®éã«ã©ããªãã®ãæ¤è¨¼ãã¦ã¿ã¾ããã ã¾ãã¯double ã¾ããå¤åé·æµ®åå°æ°åã使ãããdoubleã§ãã£ã¦ã¿ã¾ãã #include <iostream> #include <cmath> int main() { double a = 1800.0; double b = 1.08; double result = std::ceil(a * b); std::cout << result << std::endl; // 1944ãæå¾ ãã } åºåï¼ 1945 æå¾ ãã1944ã§ã¯ãªãã1945ãåºåããã¾ããã
ãªãã³ã¨ããã¨ã俺ã®åã¯èµ°ãããã ã¬ãããã«ã§ãã rapidjson - A fast JSON parser/generator for C++ with both SAX/DOM style API - Google Project Hosting Rapidjson is an attempt to create the fastest JSON parser and generator. Small but complete. Support... https://code.google.com/p/rapidjson/ fastest ããããã¨ã¯åº¦è¸ããããªã¼ã¨æããªãããåä¿¡åçã§è©¦ãã¦ã¿ã¾ããã rapidjson ã picojson åæ§ã«ãããããã¡ã¤ã«ã ãããã°ã³ã³ãã¤ã«åºæ¥ã C++ åã JSON ãã¼ãµ(ããã³ã·ãªã¢ã©ã¤ã¶)ã§ãã ã¾ã㯠rapidjso
C++ containers that save memory and time cpp-btree - C++ B-tree - Google Project Hosting GoogleããB-treeå®è£ ã®STLã³ã³ããã¼(map, set, multimap, multiset)ãçºè¡¨ããã å¤ãã®STLã®å®è£ ã§ã¯ãmap, set, multimap, multisetã¯ãRed-Black treeã§å®è£ ããã¦ãããGoogleã®çºè¡¨ã«ããã°ãB-treeå®è£ ã®ã³ã³ããã¼ã¯ã赤é»æ¨å®è£ ã«æ¯ã¹ã¦ãé度ãä¸ããããããã¡ã¢ãªæ¶è²»éãåæ¸ã§ããã¨ãã¦ããã ç´¹ä»ã¾ã§ã Bæ¨ã¯ä¸ã¤ã®ãã¼ãã«è¤æ°ã®è¦ç´ ãæ ¼ç´ãããããã«ããããã¤ã³ã¿ã¼ãªã©ã®ãªã¼ãã¼ããããä½æ¸ã§ããã¡ã¢ãªæ¶è²»éã®åæ¸ã«ã¤ãªãããã¾ããè¤æ°ã®è¦ç´ ãä¸æ¬ãã¦ãã¼ãã«è©°ãè¾¼ããããé度åä¸ãããã®ãããããªããããã®ã¸ãã¯ã
ãã®è¨äºã¯C++ Advent Calendar 2012ã®15æ¥ç®ã«ã¨ã³ããªãã¦ãã¾ãã å 容ã¯C++11ãã ã¼ãã»ãã³ãã£ã¯ã¹ãã®å ¥éè¨äºã¨ãªã£ã¦ãã¾ãã ããã ã ã¼ãã»ãã³ãã£ã¯ã¹åè ã·ã³ã¿ãã¯ã¹ vs. ã»ãã³ãã£ã¯ã¹ ã³ãã¼ vs. ã ã¼ã ã ã¼ãã®ãã¤2ã¤ã®æå³ C++11ã®ã ã¼ãã»ãã³ãã£ã¯ã¹å¯¾å¿ auto_ptrããunique_ptr㸠auto_ptrã®æãéå» unique_ptrã¸ã®ç§»è¡ std::moveã®å½¹å² ã ã¼ãã»ãã³ãã£ã¯ã¹ã使ãã C++11æ¨æºã©ã¤ãã©ãªã¨ã ã¼ã ã ã¼ã"å¾"ã®ä¸èº«ã¯ï¼ ã ã¼ããå©ç¨ãã¦é¢æ°ãæ¸ã ï¼æ¬æã®ã¿ç´9500åï¼ ã¾ããã To move or not to move: that is the question. â Bjarne Stroustrup, 2010ï¼æ¹ï¼*1 ããã°ã©ãã³ã°è¨èªC++ã®æ°ããå½éæ¨æºè¦æ ¼*2
ãã®è¨äºã¯C++ Advent Calendar 2012ã®13æ¥ç®ã§ãã Variadic Templatesã¨ã¯ C++11ã§ã¯ãã³ãã¬ã¼ãã§"."ã3ã¤ä»ãããã¨ãåºæ¥ãããã«ãªãã¾ããã ãããªæãã§ã template <class... Ts> ããã§ä½ãåºæ¥ãã®ãã¨ããã¨ã0å以ä¸ã®ä»»æã®ãã³ãã¬ã¼ãå¼æ°ãåãåããããã«ãªãã¾ãããã®ã¨ããTsããã³ãã¬ã¼ãããã¯ã¨å¼ã³ã¾ãã Variadic Templateã¯ãã³ãã¬ã¼ãã¯ã©ã¹ã¨é¢æ°ãã³ãã¬ã¼ãã®ä¸¡æ¹ã§ä½¿ããã¨ãåºæ¥ã¾ãã ãã³ãã¬ã¼ãã¯ã©ã¹ã®å ´å template <class... Ts> class hoge; ãã®ããã«æ¸ãããã¦ããã°ã hoge<> hoge< long > hoge< int, short > ãããªæãã§åã渡ããã¨ãã§ããããã«ãªãã¾ãã ã¾ããclass...ã®ããã«åã ãã§ãªãint
ããµã¤ãã¦ãºã»ã¢ããã³ãã«ã¬ã³ãã¼ãã®4æ¥ç®ã§ãï¼ããã¾ã§ã®è¨äºä¸è¦§ï¼ãã©ãããä¸æ¥å主ã¯å ããããã§ãï¼ç¬ï¼ã (0) ã¯ããã« ããã«ã¡ã¯ããµã¤ãã¦ãºã»ã©ãã®å·åç§å®ã§ããç§ã¯ä¸»ã«ãµã¤ãã¦ãºè£½åã®é«éåã®ãæä¼ãããã¦ãã¾ãããããå æ¥ã製åã¨ã¯é¢ä¿ãªããã®ãé«éåããã®ã§ãä»æ¥ã¯ãããçºè¡¨ãã¾ãã ãµã¤ãã¦ãºã«ã¯ç¤¾å åå¼·ä¼ãããã¤ããã£ã¦ããã®ä¸ã«ã¯C++ã®åå¼·ä¼ãããã¾ããç§ã¯ãµã¤ãã¦ãºã®åå¼·ä¼ã«åå ããã®ã好ããªã®ã§ããã®C++ã®åå¼·ä¼ã«åå ãã¦ã¿ã¾ããããã®åå¼·ä¼ã§ã¯ããæ°ç¬ãã¨ããããºã«ã解ãããã°ã©ã ãC++ã§æ¸ãã¦ã¿ãããã¨ããã®ãæåã®ãã¼ãã§ãããåå è åèªãããã°ã©ã ãæ¸ããç¿é±ã«ãäºãã«ã¬ãã¥ã¼ãããã¨ãããã¨ãè¡ããã¾ããã ããã§ç§ã¯ããããã¦ãã¾ãã¾ããããããããã§ããé«éåãã¦ãã¾ã£ãã®ã§ãï¼ è¨ãã¾ã§ããªãã§ããã誰ããããªãã¨ã¯æãã§ãã¾ãããããã
å§ãã« æ¬è¨äºã¯ C++11 Advent Calendar 2011 : ATND ã®6æ¥ç®ã§ãã std::thread C++11æ代ã®threadã®åºæ¬ã¯ std::thread ã§ããããããã« #include ããã¾ããããstd::threadã¯ã³ã³ã¹ãã©ã¯ã¿ã§æ¸¡ãããé¢æ°ãªãã¸ã§ã¯ããå¥ã¹ã¬ããã§å®è¡ãã¾ãã #include <iostream> #include <thread> void f() { std::cout << "f()" << std::endl; } int main() { std::thread thr(f); thr.join(); return 0; } ãã®ããã°ã©ã ãå®è¡ãã㨠f() ã¨è¡¨ç¤ºãããã¯ãã§ããã³ã³ãã¤ã«ãã¦å®è¡ãã¦ã¿ã¾ãã $ g++ -o thr thr.cpp -std=c++0x $ ./thr f() $ 確ãã«
C++11æ¨æºã©ã¤ãã©ãªã§æ°ãã追å ãããstd::promiseã¨std::futureã«ã¤ãã¦ã¡ã¢ã future/promiseã®åºæ¬ 両è ã¨ãã«æ¨æºããã <future> ã«ã¦å®ç¾©ãããã¯ã©ã¹ãã³ãã¬ã¼ãã§ããããå¥ã¹ã¬ããã§ã®å¦çå®äºãå¾ ã¡ããã®å¦ççµæãåå¾ãããã¨ãã£ãéåæå¦çãå®ç¾ããããã®é¨å*1ã å¦ççµæã¨ãã¦ãé常ã®æ»ãå¤(value)ã¾ãã¯ä¾å¤(exception)ãæ±ã*2ãæ»ãå¤ã®åã¯ãã³ãã¬ã¼ãå¼æ°ã«ã¦æå®ããããä¾å¤ã¯ä»»æã®åãæ±ããã¨ãã§ãããï¼ä¾: intåãæ±ããªãstd::future<int>, std::promise<int>ãç¨ãããä¾å¤ã¯std::exception_ptrãå©ç¨ããããä»»æã®åãä¼æ¬å¯è½ãï¼ future ã¯è¨ç®å¦çã®å®äºå¾ ã¡ï¼åææ©æ§ï¼ã¨çµæåãåºãï¼éä¿¡ãã£ãã«ï¼æ©è½ãæä¾ããã promise ã¯è¨ç®å¦çã®çµæ
ããããã° C++ ã®ããããã¡ã¤ã«ã #include ããã ãã§ä½¿ãã GC ãæ¸ãã¾ããã使ãæ¹ã¯ä¸ã®ãµã³ãã«ã³ã¼ããè¦ã¦ãããã°ããã¨ãã¦ãç¹å¾´ã¨ãã¦ã¯ã ããããã¡ã¤ã«ã #include ããã ãã§ä½¿ãã C++ ã®æ¨æºæ©è½ã ãã使ã£ã¦ããã®ã§ãã¼ã¿ãã«*1 mark-and-sweep, precise GC ã£ã¦ãªãããã§ãããããã³ã¼ã㯠GitHub - kazuho/picogc: a tiny, portable, precise, mark-and-sweep GC in C++ ã«ããã¾ãã C++ ã®ããã¸ã§ã¯ãã§ãã¡ãã£ã¨ããã ã㯠GC ãã»ãããã ãã©ãã£ã¦ãªã±ã¼ã¹ã§ä½¿ããããã¨æãã¾ããé度ããããããã§ãããããªãããª*2ã ã¨ããããã§ã以ä¸ããµã³ãã«ã³ã¼ãã軽ã説æãã¦ããã¨ã GC ã使ãã¯ã©ã¹ã¯ picogc::gc_object ãç¶æ¿ãã
ã³ã³ã·ã¥ã¼ãåãã²ã¼ã éçºã«æºãã£ã¦çµæ§ãªå¹´æ°ãçµéãã¾ããã ããã¾ã§ã¯æµã¾ãã¦ããã®ããSTLã使ããç°å¢ã«ãã*1ã®ã§ç¹ã«æ°ã«ãã¦ããªãã£ãã®ã§ãããã©ãããå ´æã«ãã£ã¦ã¯STLã¯ã²ã¼ã éçºåãã§ã¯ãªãããã使ç¨ãç¦æ¢ãããäºãããããã§ãã ããããã§ãããç§ãSTL使ã£ã¦ã³ã³ã·ã¥ã¼ãåãã®ã²ã¼ã ä½ã£ã¦ãã¾ãããã©ã 確ãã«STLã¯ãã®ç¹æ§ã¨ä½¿ç¨æ¹æ³ãç¥ããªãã¨çãç®ã«ããã¾ããç¹ã«ã³ã³ã·ã¥ã¼ãæ©ã®ã¡ã¤ã³ã¡ã¢ãªå®¹éã¯PCã«æ¯ã¹ã¦å§åçã«å°ãªãã§ãããã®å°ãªãã¡ã¤ã³ã¡ã¢ãªä¸ã«å®è¡ãã¤ããªããã¼ãé åãªã©ãå±éããªããã°ãªãã¾ãããã¡ã¢ãªç®¡çã«å¯¾ãã¦ã·ãã¢ã«ãªãã®ã¯å½ç¶ã§ãtemplateã¯ä½¿ç¨æ¹æ³ã«ãã£ã¦ã¯ãã¤ããªãµã¤ãºãå¢å¤§ããã®ã§ä½¿ç¨ãããç¨åº¦å¶éããäºã¯ä»æ¹ããã¾ããã ã¾ããstd::listããstd::mapçã¯ä½¿ãã°ä½¿ãç¨å é¨ã§ã¡ã¢ãªãå¹³ç¶ã¨åæãã¦ãããã®ã§ããã¼ãé
CodeZineç·¨éé¨ã§ã¯ãç¾å ´ã§æ´»èºãããããããã¼ãã¹ã¿ã¼ã«ããããã®ã«ã³ãã¡ã¬ã³ã¹ãDevelopers Summitãããã¨ã³ã¸ãã¢ã®çããã¾ããã¼ã¹ãããããã®ã¤ãã³ããDevelopers Boostããªã©ããã¾ãã¾ãªã«ã³ãã¡ã¬ã³ã¹ãä¼ç»ã»éå¶ãã¦ãã¾ãã
Boost.åå¼·ä¼ #8 å¤§éª ã«åå ãã¦ãã¾ãããçºè¡¨è ãéå¶è ã®çæ§ãç²ãæ§ã§ãããä»åãããããã¨é»éè¡çãªçºè¡¨ãããããããå¤æ ãã¼ãã¨ææ ¨æ·±ãè¦ã¦ããã®ã§ãããããã¯ããã¨ãã¦ãå人çã«æ°ã«ãªã£ã¦ãããã¼ãã¨ãã¦ãC++ ã§ã®ãã¹ããã«é¢é£ããçºè¡¨ã 2 件ã»ã©ãã£ãã®ã§ã楽ãã¿ã«ãã¦ãã¾ããã C++ã§ãã¹ãé§åéçº - @akineko Boost.Testã®ç´¹ä» - @hotwatermorning C++ ã®ãã¹ããã¬ã¼ã ã¯ã¼ã¯ãæ°å¤ãå ¬éããã¦ããã好ã¿ãç¨éã«ãã£ã¦é¸æè¢ãå¤ãã£ã¦æ¥ãã®ã§ãããã¾ãä»ã ã¨é¸æè¢ã¨ãã¦æããã®ã¯ãBoost.Test ã googletest ããã«ãªã£ã¦ããã®ããªã¨æãã¾ããã©ã¡ãï¼ãããã¯ãä¸è¨ä»¥å¤ãå«ããã©ããï¼ãé¸æãã¹ãããã¨è¨ãåãã«å¯¾ãã¦ã¯ãæ®å¿µãªããç¾ç¶ã§ã決ãæã¨ãªããã®ã«æ¬ ãã¦ããã®ã§ãããèªåãå©ç¨ããä¸ã§é¸æãã
Introduction This is a mini-tutorial that describes how to use C++ with Bison. It was done in reply to a thread in comp.compilers that questioned how %union declarations would interfere with C++ strong type checking. I assume that you already know C++ and how to use Bison, so I will talk just about the important parts. Grammar For the example lets use the following BNF grammar. It's too simple and
ç®æ¬¡ ãã¼ã é£çµ¡ããã RSS Login Blog å©ç¨ç¶æ³ æç¨¿æ° - 1078 è¨äº - 2 ã³ã¡ã³ã - 26543 ãã©ãã¯ãã㯠- 363 ãã¥ã¼ã¹ èä½ã¨ãè¦ãã®åã 㯠èä½ã¨ãè¦ãã®åã 㯠æ±æ¹ç±å¸¯æã¸ã ãããã¾ æ±äº¬åå¼·ä¼#2 C++/CLI ã«ã¯ãã«ã»ã¬ã·ã æ±äº¬åå¼·ä¼#3 template vs. generics 大éªåå¼·ä¼#6 C++ãããã°ãªã æ±äº¬åå¼·ä¼#7 C++ãããã°ãªã æ±äº¬åå¼·ä¼#8 STL/CLRã«ããGeneric Programming TechEd 2007 @YOKOHAMA C++ã»C++/CLIã»C# é©æé©æ æ±äº¬åå¼·ä¼#14 Making of BOF æ±äº¬åå¼·ä¼#15 ç¶æ é·ç§» åå¤å±åå¼·ä¼#2 WinUnit - ãæ°æ¥½ãæ軽UnitTest CodeZine Cã§å®ç¾ãããã·ã¡ãªãã¸ã§ã¯ãæåã CUnitã«ãããã¹ãé§
ã¯ããã« C++ã§ã¯é常ãã¯ã©ã¹ã®privateã¡ã³ãã«å¤é¨ããã¢ã¯ã»ã¹ãããã¨ãã§ããªãã ã¢ã¯ã»ã¹ããããã«ã¯ãfriendé¢æ°ãfriendã¯ã©ã¹ãç¨ããã ãããã http://bloglitb.blogspot.com/2010/07/access-to-private-members-thats-easy.html ã§è©±é¡ã¨ãªããDaveãã https://gist.github.com/1528856 ã«ã¨ãã»ã³ã¹ãæ½åºããã³ã¼ããèµ·ããã¦ããããprivateã¡ã³ãã«å¤é¨ããåæ³çã«ã¢ã¯ã»ã¹ããæ¹æ³ãããã Daveã®ã³ã¼ãã®ã³ã¡ã³ãã ãã§å¿ è¦ååãããããªãããç§ã¯ç解ããã®ã«ããªãæéãããã£ã¦ãã¾ã£ãã®ã§ããã®çµç·¯ãå¿ããªãããã«ãããã«æ¸ãã¦ããããã¨æãã ã¡ã³ããã¤ã³ã¿ã®å¾©ç¿ ã¾ãã¯ããã®ã³ã¼ããè¦ã¦æ¬²ããã http://ideone.com/dGRqg
ãã®è¨äºã¯ Mac Dev JP Advent Calendar ã®åå è¨äº (6 æ¥ç®) ã§ãã ã¯ããã« ãã®è¨äºã§ã¯ã Objective-C++ 㧠C++11 ã使ç¨ããä¾ã«ã¤ãã¦ç´¹ä»ãã¾ãã Objective-C++ ã¨ã¯ Objective-C++ ã¯ãããã°ã©ãã³ã°è¨èª Objective-C 㨠C++ ã¨ãå¤éç¶æ¿ãããããªè¨èªã§ãããäºãã®ææ³ããã¡åããªãã®ã§ãæ··å¨ãããã¨ãã§ãã¾ãã極ç¨ã«ææ³ãã³ã³ããªã¯ããã¾ãããå人çã«ã¯ããã§å°ã£ããã¨ã¯ããã¾ãããææ³çã«ã»ã¼ç´äº¤ãããäºãã®ãªãã¸ã§ã¯ããåãªããã¤ã³ã¿å¤ã¨ã¿ãªãã¦ãããããæ··å¨ããããã¨ãã§ããã®ã§ãã Objective-C 㨠C++ ã®æ©è½ããªã¼ãã¼ã©ããããããããªãã¨ã¯ã§ãã¾ãããä¾ãã°ã Objective-C ã®ã¯ã©ã¹ã C++ ã§ç¶æ¿ããããããããªãã¨ã¯ã§ãã¾ããã Objective
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}