最近幫別人除錯,看到一個有趣的案例。下面的程式會有 Segmentation Fault(記憶體區段錯誤),大家看得出問題嗎?
#include <stdarg.h>
struct Context {
char *error_;
};
void report_error …
最近幫別人除錯,看到一個有趣的案例。下面的程式會有 Segmentation Fault(記憶體區段錯誤),大家看得出問題嗎?
#include <stdarg.h>
struct Context {
char *error_;
};
void report_error …
本文要介紹 C++ 17 新增的 std::any
類別。它能儲存所有「可以被複製建構(Copy Constructible)」的數值。以下我們會先介紹 std::any
的基本用法,接著介 …
今天我想要介紹 C++ 執行緒的高階 API:std::promise
、std::future
、std::packaged_task
與 std::async
。本文的內容可以濃縮為下圖:
其中 std::promise
與 std::future
是執行緒之間 …
前幾天在除錯的過程中,我注意到程式印出的 Stack Trace 和我的預期相去甚遠。在反覆研究之後,我發現一段有問題的程式碼。大 …
最近在編寫單元測試的時候,我需要一個將浮點數「四捨六入五成雙」的函式。一開始我想:這很容易:只要把整數部分和小數 …
今天我想要介紹 C++ 17 對「例外處理規格(Exception Specification)」的二個改動:
throw (ClassName)
noexcept
納入型別系統(Type System)在 C++ 98 …
C++ 17 新增三個標準屬性(Attribute):
在 C++ 17 標準下,我們能以 auto
關鍵字宣告非型別樣版參數(Non-Type Template Argument)。編譯器會以「樣版的實際參數」推導「樣版參數」的型別:
template <auto Arg …
__has_include
是 C++ 17 加進前置處理器(Preprocessor)的新功能。我們能以 __has_include
表達式偵測某個標頭檔(Header File)是否存在。如果前置處理器能找到指 …
Inline Variable(內嵌變數)是 C++ 17 新增的功能。Inline Variable 與 Inline Function(內嵌函式)相似,能讓我們在多個 Translation Unit(編譯單元)定義同樣的變數[1]。鏈結器(Linker …
Page 1 / 3 Next »